Spec-Zone.ru › OpenJDK 27

Interface RelationSupportMBean

All Superinterfaces:
Relation
All Known Implementing Classes:
RelationSupport
public interface RelationSupportMBean extends Relation
A RelationSupport object is used internally by the Relation Service to represent simple relations (only roles, no properties or methods), with an unlimited number of roles, of any relation type. As internal representation, it is not exposed to the user.

RelationSupport class conforms to the design patterns of standard MBean. So the user can decide to instantiate a RelationSupport object himself as a MBean (as it follows the MBean design patterns), to register it in the MBean Server, and then to add it in the Relation Service.

The user can also, when creating his own MBean relation class, have it extending RelationSupport, to retrieve the implementations of required interfaces (see below).

It is also possible to have in a user relation MBean class a member being a RelationSupport object, and to implement the required interfaces by delegating all to this member.

RelationSupport implements the Relation interface (to be handled by the Relation Service).

Since:
1.5

Method Summary

Modifier and Type Method Description
Boolean isInRelationService()
Returns an internal flag specifying if the object is still handled by the Relation Service.
void setRelationServiceManagementFlag(Boolean flag)
Specifies whether this relation is handled by the Relation Service.

Methods declared in interface Relation

getAllRoles, getReferencedMBeans, getRelationId, getRelationServiceName, getRelationTypeName, getRole, getRoleCardinality, getRoles, handleMBeanUnregistration, retrieveAllRoles, setRole, setRoles
Modifier and Type Method Description
RoleResult getAllRoles()
Returns all roles present in the relation.
Map<ObjectName, List<String>> getReferencedMBeans()
Retrieves MBeans referenced in the various roles of the relation.
String getRelationId()
Returns relation identifier (used to uniquely identify the relation inside the Relation Service).
ObjectName getRelationServiceName()
Returns ObjectName of the Relation Service handling the relation.
String getRelationTypeName()
Returns name of associated relation type.
List<ObjectName> getRole(String roleName)
Retrieves role value for given role name.
Integer getRoleCardinality(String roleName)
Returns the number of MBeans currently referenced in the given role.
RoleResult getRoles(String[] roleNameArray)
Retrieves values of roles with given names.
void handleMBeanUnregistration(ObjectName objectName, String roleName)
Callback used by the Relation Service when a MBean referenced in a role is unregistered.
RoleList retrieveAllRoles()
Returns all roles in the relation without checking read mode.
void setRole(Role role)
Sets the given role.
RoleResult setRoles(RoleList roleList)
Sets the given roles.

Method Details

isInRelationService

Boolean isInRelationService()
Returns an internal flag specifying if the object is still handled by the Relation Service.
Returns:
a Boolean equal to Boolean.TRUE if the object is still handled by the Relation Service and Boolean.FALSE otherwise.

setRelationServiceManagementFlag

void setRelationServiceManagementFlag(Boolean flag) throws IllegalArgumentException

Specifies whether this relation is handled by the Relation Service.

BEWARE, this method has to be exposed as the Relation Service will access the relation through its management interface. It is RECOMMENDED NOT to use this method. Using it does not affect the registration of the relation object in the Relation Service, but will provide wrong information about it!

Parameters:
flag - whether the relation is handled by the Relation Service.
Throws:
IllegalArgumentException - if null parameter

Report a bug or suggest an enhancement
For further API reference and developer documentation see the Java SE Documentation, which contains more detailed, developer-targeted descriptions with conceptual overviews, definitions of terms, workarounds, and working code examples. Other versions.
Java is a trademark or registered trademark of Oracle and/or its affiliates in the US and other countries.
Copyright © 1993, 2026, Oracle and/or its affiliates, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
All rights reserved. Use is subject to license terms and the documentation redistribution policy.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API