@Component(value="cuba_JmxControl") public class JmxControlBean extends java.lang.Object implements JmxControlAPI
Modifier and Type | Class and Description |
---|---|
protected static class |
JmxControlBean.AttributeComparator
Sorts attributes alphabetically by name
|
protected static class |
JmxControlBean.DomainComparator
Sorts domains alphabetically by name
|
protected static class |
JmxControlBean.MBeanComparator
Sorts mbeans alphabetically by name
|
protected static class |
JmxControlBean.OperationComparator
Sorts operations alphabetically by name
|
Modifier and Type | Field and Description |
---|---|
protected DataService |
dataService |
protected static java.lang.String |
FIELD_ROLE
Constant identifier for the role field in a JMX
Descriptor . |
protected static java.lang.String |
FIELD_RUN_ASYNC |
protected static java.lang.String |
FIELD_TIMEOUT |
static java.lang.String |
JMX_PORT_SYSTEM_PROPERTY |
protected Metadata |
metadata |
static java.lang.String |
RMI_SERVER_HOSTNAME_SYSTEM_PROPERTY |
protected static java.lang.String |
ROLE_GETTER
Constant identifier for the getter role field value in a JMX
Descriptor . |
protected static java.lang.String |
ROLE_SETTER
Constant identifier for the setter role field value in a JMX
Descriptor . |
NAME
Constructor and Description |
---|
JmxControlBean() |
Modifier and Type | Method and Description |
---|---|
protected java.lang.String |
cleanType(java.lang.String type) |
protected ManagedBeanAttribute |
createManagedBeanAttribute(javax.management.MBeanServerConnection connection,
javax.management.ObjectName name,
javax.management.MBeanAttributeInfo attribute,
ManagedBeanInfo mbinfo) |
protected ManagedBeanInfo |
createManagedBeanInfo(JmxInstance jmx,
javax.management.ObjectName name,
javax.management.MBeanInfo info) |
protected java.lang.String |
getDefaultNodeName(JmxInstance instance) |
java.util.List<ManagedBeanDomain> |
getDomains(JmxInstance instance)
Loads list of managed bean domains
|
java.util.List<JmxInstance> |
getInstances() |
JmxInstance |
getLocalInstance() |
java.lang.String |
getLocalNodeName() |
ManagedBeanInfo |
getManagedBean(JmxInstance instance,
java.lang.String beanObjectName)
Loads the managed bean by its ObjectName
|
java.util.List<ManagedBeanInfo> |
getManagedBeans(JmxInstance instance)
Loads the list of managed bean infos
|
ManagedBeanOperation |
getOperation(ManagedBeanInfo bean,
java.lang.String operationName,
java.lang.String[] argTypes)
Searches for the bean operation by its name and argument types.
|
java.lang.String |
getRemoteNodeName(JmxInstance instance) |
java.lang.Object |
invokeOperation(ManagedBeanOperation operation,
java.lang.Object[] parameterValues)
Invokes method of managed bean
|
ManagedBeanAttribute |
loadAttribute(ManagedBeanInfo mbinfo,
java.lang.String attributeName)
Loads attribute by its name.
|
void |
loadAttributes(ManagedBeanInfo mbinfo)
Loads attributes for managed bean descriptor
|
void |
loadAttributeValue(ManagedBeanAttribute attribute)
Loads attribute value for managed bean attribute
|
protected void |
loadOperations(ManagedBeanInfo mbean,
javax.management.MBeanInfo info) |
void |
saveAttributeValue(ManagedBeanAttribute attribute)
Saves attribute value to JMX node
|
protected void |
setSerializableValue(ManagedBeanAttribute mba,
java.lang.Object value) |
public static final java.lang.String JMX_PORT_SYSTEM_PROPERTY
protected static final java.lang.String FIELD_RUN_ASYNC
protected static final java.lang.String FIELD_TIMEOUT
public static final java.lang.String RMI_SERVER_HOSTNAME_SYSTEM_PROPERTY
@Inject protected DataService dataService
@Inject protected Metadata metadata
protected static final java.lang.String FIELD_ROLE
Descriptor
.protected static final java.lang.String ROLE_GETTER
Descriptor
.protected static final java.lang.String ROLE_SETTER
Descriptor
.public java.util.List<JmxInstance> getInstances()
getInstances
in interface JmxControlAPI
public JmxInstance getLocalInstance()
getLocalInstance
in interface JmxControlAPI
public java.lang.String getLocalNodeName()
getLocalNodeName
in interface JmxControlAPI
public java.lang.String getRemoteNodeName(JmxInstance instance)
getRemoteNodeName
in interface JmxControlAPI
public java.util.List<ManagedBeanInfo> getManagedBeans(JmxInstance instance)
JmxControlAPI
getManagedBeans
in interface JmxControlAPI
instance
- JMX node descriptorpublic ManagedBeanInfo getManagedBean(JmxInstance instance, java.lang.String beanObjectName)
JmxControlAPI
getManagedBean
in interface JmxControlAPI
instance
- JMX node descriptorbeanObjectName
- exact ObjectName of the beanprotected ManagedBeanInfo createManagedBeanInfo(JmxInstance jmx, javax.management.ObjectName name, javax.management.MBeanInfo info)
public void loadAttributes(ManagedBeanInfo mbinfo)
JmxControlAPI
loadAttributes
in interface JmxControlAPI
mbinfo
- managed bean descriptorpublic ManagedBeanAttribute loadAttribute(ManagedBeanInfo mbinfo, java.lang.String attributeName)
JmxControlAPI
loadAttribute
in interface JmxControlAPI
mbinfo
- managed bean descriptorprotected ManagedBeanAttribute createManagedBeanAttribute(javax.management.MBeanServerConnection connection, javax.management.ObjectName name, javax.management.MBeanAttributeInfo attribute, ManagedBeanInfo mbinfo)
public void loadAttributeValue(ManagedBeanAttribute attribute)
JmxControlAPI
loadAttributeValue
in interface JmxControlAPI
attribute
- attribute descriptorpublic ManagedBeanOperation getOperation(ManagedBeanInfo bean, java.lang.String operationName, @Nullable java.lang.String[] argTypes)
JmxControlAPI
getOperation
in interface JmxControlAPI
bean
- managed bean descriptoroperationName
- operation exact nameargTypes
- operation argument typespublic void saveAttributeValue(ManagedBeanAttribute attribute)
JmxControlAPI
saveAttributeValue
in interface JmxControlAPI
attribute
- attribute descriptorpublic java.lang.Object invokeOperation(ManagedBeanOperation operation, java.lang.Object[] parameterValues)
JmxControlAPI
invokeOperation
in interface JmxControlAPI
operation
- operation descriptorparameterValues
- array with parameter valuespublic java.util.List<ManagedBeanDomain> getDomains(JmxInstance instance)
JmxControlAPI
getDomains
in interface JmxControlAPI
instance
- JMX node descriptorprotected void loadOperations(ManagedBeanInfo mbean, javax.management.MBeanInfo info)
protected java.lang.String cleanType(java.lang.String type)
protected void setSerializableValue(ManagedBeanAttribute mba, java.lang.Object value)
protected java.lang.String getDefaultNodeName(JmxInstance instance)