Package io.jmix.jmxconsole.impl
Class JmxControlImpl
java.lang.Object
io.jmix.jmxconsole.impl.JmxControlImpl
- All Implemented Interfaces:
JmxControl
Implementation of the
JmxControl
interface for managing JMX functionality.
This class provides operations to fetch metadata and information for JMX-Managed Beans
and perform related tasks.-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static class
Sorts attributes alphabetically by nameprotected static class
Sorts domains alphabetically by nameprotected static class
Sorts mbeans alphabetically by nameprotected static class
Sorts operations alphabetically by name -
Field Summary
Modifier and TypeFieldDescriptionprotected org.springframework.context.ApplicationContext
protected static final String
Constant identifier for the role field in a JMXDescriptor
.protected Metadata
protected static final String
Constant identifier for the getter role field value in a JMXDescriptor
.protected static final String
Constant identifier for the setter role field value in a JMXDescriptor
. -
Constructor Summary
ConstructorDescriptionJmxControlImpl
(org.springframework.context.ApplicationContext applicationContext, Metadata metadata, EntityStates entityStates) -
Method Summary
Modifier and TypeMethodDescriptionprotected String
protected ManagedBeanAttribute
createAttribute
(MBeanServerConnection connection, ObjectName name, MBeanAttributeInfo attribute, ManagedBeanInfo mbinfo) protected ManagedBeanDomain
protected ManagedBeanInfo
createManagedBeanInfo
(ObjectName name, MBeanInfo info) protected ManagedBeanOperation
createOperation
(ManagedBeanInfo mbean, MBeanOperationInfo operation) protected ManagedBeanOperationParameter
createOperationParameter
(ManagedBeanOperation o, int index, MBeanParameterInfo pinfo) protected boolean
equalAttributes
(List<ManagedBeanOperationParameter> args, String[] argTypes) Loads list of managed bean domains.getManagedBean
(String beanObjectName) Loads the managed bean by its ObjectName.Loads the list of managed bean infos.getOperation
(ManagedBeanInfo bean, String operationName, String[] argTypes) Searches for the bean operation by its name and argument types.invokeOperation
(ManagedBeanOperation operation, Object[] parameterValues) Invokes method of managed bean.protected boolean
isGetterOrSetter
(MBeanOperationInfo operation) loadAttribute
(ManagedBeanInfo mbinfo, 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, MBeanInfo info) void
saveAttributeValue
(ManagedBeanAttribute attribute) Saves attribute value to JMX node.protected void
setSerializableValue
(ManagedBeanAttribute mba, Object value) protected static <T> T
withConnection
(Function<MBeanServerConnection, T> action)
-
Field Details
-
FIELD_ROLE
Constant identifier for the role field in a JMXDescriptor
.- See Also:
-
ROLE_GETTER
Constant identifier for the getter role field value in a JMXDescriptor
.- See Also:
-
ROLE_SETTER
Constant identifier for the setter role field value in a JMXDescriptor
.- See Also:
-
applicationContext
protected org.springframework.context.ApplicationContext applicationContext -
metadata
-
-
Constructor Details
-
JmxControlImpl
public JmxControlImpl(org.springframework.context.ApplicationContext applicationContext, Metadata metadata, EntityStates entityStates)
-
-
Method Details
-
getManagedBeans
Description copied from interface:JmxControl
Loads the list of managed bean infos.- Specified by:
getManagedBeans
in interfaceJmxControl
- Returns:
- the list with managed beans
-
getManagedBean
Description copied from interface:JmxControl
Loads the managed bean by its ObjectName.- Specified by:
getManagedBean
in interfaceJmxControl
- Parameters:
beanObjectName
- exact ObjectName of the bean- Returns:
- found managed bean, null if no bean found
-
createManagedBeanInfo
-
loadAttributes
Description copied from interface:JmxControl
Loads attributes for managed bean descriptor.- Specified by:
loadAttributes
in interfaceJmxControl
- Parameters:
mbinfo
- managed bean descriptor
-
loadAttribute
Description copied from interface:JmxControl
Loads attribute by its name. Note that the reference from ManagedBeanInfo to loaded ManagedBeanAttribute is not set.- Specified by:
loadAttribute
in interfaceJmxControl
- Parameters:
mbinfo
- managed bean descriptor- Returns:
- loaded attribute, null if no attribute found.
-
createAttribute
protected ManagedBeanAttribute createAttribute(MBeanServerConnection connection, ObjectName name, MBeanAttributeInfo attribute, ManagedBeanInfo mbinfo) -
loadAttributeValue
Description copied from interface:JmxControl
Loads attribute value for managed bean attribute.- Specified by:
loadAttributeValue
in interfaceJmxControl
- Parameters:
attribute
- attribute descriptor
-
getOperation
public ManagedBeanOperation getOperation(ManagedBeanInfo bean, String operationName, @Nullable String[] argTypes) Description copied from interface:JmxControl
Searches for the bean operation by its name and argument types.- Specified by:
getOperation
in interfaceJmxControl
- Parameters:
bean
- managed bean descriptoroperationName
- operation exact nameargTypes
- operation argument types- Returns:
- Found operation descriptor, null if not found
-
saveAttributeValue
Description copied from interface:JmxControl
Saves attribute value to JMX node.- Specified by:
saveAttributeValue
in interfaceJmxControl
- Parameters:
attribute
- attribute descriptor
-
invokeOperation
Description copied from interface:JmxControl
Invokes method of managed bean.- Specified by:
invokeOperation
in interfaceJmxControl
- Parameters:
operation
- operation descriptorparameterValues
- array with parameter values- Returns:
- invocation result
-
getDomains
Description copied from interface:JmxControl
Loads list of managed bean domains.- Specified by:
getDomains
in interfaceJmxControl
- Returns:
- the list of managed bean domains
-
equalAttributes
-
loadOperations
-
isGetterOrSetter
-
createOperationParameter
protected ManagedBeanOperationParameter createOperationParameter(ManagedBeanOperation o, int index, MBeanParameterInfo pinfo) -
createOperation
-
createDomain
-
cleanType
-
setSerializableValue
-
withConnection
-