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
Nested ClassesModifier and TypeClassDescriptionprotected static classSorts attributes alphabetically by nameprotected static classSorts domains alphabetically by nameprotected static classSorts mbeans alphabetically by nameprotected static classSorts operations alphabetically by name -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.springframework.context.ApplicationContextprotected static final StringConstant identifier for the role field in a JMXDescriptor.protected Metadataprotected static final StringConstant identifier for the getter role field value in a JMXDescriptor.protected static final StringConstant identifier for the setter role field value in a JMXDescriptor. -
Constructor Summary
ConstructorsConstructorDescriptionJmxControlImpl(org.springframework.context.ApplicationContext applicationContext, Metadata metadata) -
Method Summary
Modifier and TypeMethodDescriptionprotected Stringprotected ManagedBeanAttributecreateAttribute(MBeanServerConnection connection, ObjectName name, MBeanAttributeInfo attribute, ManagedBeanInfo mbinfo) protected ManagedBeanDomainprotected ManagedBeanInfocreateManagedBeanInfo(ObjectName name, MBeanInfo info) protected ManagedBeanOperationcreateOperation(ManagedBeanInfo mbean, MBeanOperationInfo operation) protected ManagedBeanOperationParametercreateOperationParameter(ManagedBeanOperation o, int index, MBeanParameterInfo pinfo) protected booleanequalAttributes(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 booleanisGetterOrSetter(MBeanOperationInfo operation) loadAttribute(ManagedBeanInfo mbinfo, String attributeName) Loads attribute by its name.voidloadAttributes(ManagedBeanInfo mbinfo) Loads attributes for managed bean descriptor.voidloadAttributeValue(ManagedBeanAttribute attribute) Loads attribute value for managed bean attribute.protected voidloadOperations(ManagedBeanInfo mbean, MBeanInfo info) voidsaveAttributeValue(ManagedBeanAttribute attribute) Saves attribute value to JMX node.protected voidsetSerializableValue(ManagedBeanAttribute mba, Object value) protected static <T> TwithConnection(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)
-
-
Method Details
-
getManagedBeans
Description copied from interface:JmxControlLoads the list of managed bean infos.- Specified by:
getManagedBeansin interfaceJmxControl- Returns:
- the list with managed beans
-
getManagedBean
Description copied from interface:JmxControlLoads the managed bean by its ObjectName.- Specified by:
getManagedBeanin interfaceJmxControl- Parameters:
beanObjectName- exact ObjectName of the bean- Returns:
- found managed bean, null if no bean found
-
createManagedBeanInfo
-
loadAttributes
Description copied from interface:JmxControlLoads attributes for managed bean descriptor.- Specified by:
loadAttributesin interfaceJmxControl- Parameters:
mbinfo- managed bean descriptor
-
loadAttribute
Description copied from interface:JmxControlLoads attribute by its name. Note that the reference from ManagedBeanInfo to loaded ManagedBeanAttribute is not set.- Specified by:
loadAttributein 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:JmxControlLoads attribute value for managed bean attribute.- Specified by:
loadAttributeValuein interfaceJmxControl- Parameters:
attribute- attribute descriptor
-
getOperation
public ManagedBeanOperation getOperation(ManagedBeanInfo bean, String operationName, @Nullable String[] argTypes) Description copied from interface:JmxControlSearches for the bean operation by its name and argument types.- Specified by:
getOperationin 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:JmxControlSaves attribute value to JMX node.- Specified by:
saveAttributeValuein interfaceJmxControl- Parameters:
attribute- attribute descriptor
-
invokeOperation
Description copied from interface:JmxControlInvokes method of managed bean.- Specified by:
invokeOperationin interfaceJmxControl- Parameters:
operation- operation descriptorparameterValues- array with parameter values- Returns:
- invocation result
-
getDomains
Description copied from interface:JmxControlLoads list of managed bean domains.- Specified by:
getDomainsin 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
-