Java Doc for RelationServiceMBean.java in  » JMX » jfoxmx » javax » management » relation » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » JMX » jfoxmx » javax.management.relation 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


javax.management.relation.RelationServiceMBean

All known Subclasses:   javax.management.relation.RelationService,
RelationServiceMBean
public interface RelationServiceMBean (Code)
The Relation Service is in charge of creating and deleting relation types and relations, of handling the consistency and of providing query mechanisms.
author:
   Young Yang




Method Summary
public  voidaddRelation(ObjectName objectName)
     Adds a MBean created by te user (and registered by him in the MBean Server) as a relation in the Relation Service.
public  voidaddRelationType(RelationType relationType)
     Adds given object as a relation type.
public  IntegercheckRoleReading(String roleName, String relaionTypeName)
     Checks if given Role can be read in a relation of the given type.
public  IntegercheckRoleWriting(Role role, String relTypeName, Boolean initFlag)
     Checks if given Role can be set in a relation of given type.
Parameters:
  role - role to be checked
Parameters:
  relTypeName - name of relation type
Parameters:
  initFlag - flag to specify that the checking is done for theinitialisation of a role, write access shall not be verified.
public  voidcreateRelation(String relationId, String relTypeName, RoleList roleList)
     Creates a simple relation (represented by a RelationSupport object) of given relation type, and adds it in the Relation Service.

Roles are initialized according to the role list provided in parameter.

public  voidcreateRelationType(String relTypeName, RoleInfo[] roleInfoArray)
     Creates a relation type (RelationTypeSupport object) with given role infos (provided by the RoleInfo objects), and adds it in the Relation Service.
public  MapfindAssociatedMBeans(ObjectName mbeanObjectName, String relTypeName, String roleName)
     Retrieves the MBeans associated to given one in a relation.

This corresponds to CIM Associators and AssociatorNames operations.
Parameters:
  mbeanObjectName - ObjectName of MBean
Parameters:
  relTypeName - can be null; if specified, only the relationsof that type will be considered in the search.

public  MapfindReferencingRelations(ObjectName mbeanObjectName, String relTypeName, String roleName)
     Retrieves the relations where a given MBean is referenced.

This corresponds to the CIM "References" and "ReferenceNames" operations.
Parameters:
  mbeanObjectName - ObjectName of MBean
Parameters:
  relTypeName - can be null; if specified, only the relationsof that type will be considered in the search.

public  ListfindRelationsOfType(String relTypeName)
     Returns the relation ids for relations of the given type.
public  ListgetAllRelationIds()
    
public  ListgetAllRelationTypeNames()
    
public  RoleResultgetAllRoles(String relationId)
    
public  booleangetPurgeFlag()
     Returns the flag to indicate if when a notification is received for the unregistration of a MBean referenced in a relation, if an immediate "purge" of the relations (look for the relations no longer valid) has to be performed , or if that will be performed only when the purgeRelations method will be explicitly called.
public  MapgetReferencedMBeans(String relationId)
     Retrieves MBeans referenced in the various roles of the relation.
public  StringgetRelationTypeName(String relationId)
     Returns name of associated relation type for given relation.
public  ListgetRole(String relationId, String roleName)
     Retrieves role value for given role name in given relation.
public  IntegergetRoleCardinality(String relationId, String roleName)
    
public  RoleInfogetRoleInfo(String relTypeName, String roleInfoName)
    
public  ListgetRoleInfos(String relTypeName)
    
public  RoleResultgetRoles(String relationId, String[] roleNames)
     Retrieves values of roles with given names in given relation.
public  BooleanhasRelation(String relationId)
     Checks if there is a relation identified in Relation Service with given relation id.
public  voidisActive()
     Checks if the Relation Service is active.
public  StringisRelation(ObjectName objectName)
     Returns the relation id associated to the given ObjectName if the MBean has been added as a relation in the Relation Service.
public  ObjectNameisRelationMBean(String relationId)
     If the relation is represented by a MBean (created by the user and added as a relation in the Relation Service), returns the ObjectName of the MBean.
public  voidpurgeRelations()
     Purges the relations.

Depending on the purgeFlag value, this method is either called automatically when a notification is received for the unregistration of a MBean referenced in a relation (if the flag is set to true), or not (if the flag is set to false).

In that case it is up to the user to call it to maintain the consistency of the relations.

public  voidremoveRelation(String relationId)
     Removes given relation from the Relation Service.
public  voidremoveRelationType(String relTypeName)
     Removes given relation type from Relation Service.
public  voidsendRelationCreationNotification(String relationId)
     Sends a notification (RelationNotification) for a relation creation.
public  voidsendRelationRemovalNotification(String relaionId, List unregMBeanList)
     Sends a notification (RelationNotification) for a relation removal.
public  voidsendRoleUpdateNotification(String relationId, Role newRole, List oldRoleValue)
     Sends a notification (RelationNotification) for a role update in the given relation.
public  voidsetPurgeFlag(boolean purgeFlag)
     Sets the flag to indicate if when a notification is received for the unregistration of a MBean referenced in a relation, if an immediate "purge" of the relations (look for the relations no longer valid) has to be performed , or if that will be performed only when the purgeRelations method will be explicitly called.
public  voidsetRole(String relationId, Role role)
     Sets the given role in given relation.
public  RoleResultsetRoles(String relationId, RoleList roleList)
     Sets the given roles in given relation.
public  voidupdateRoleMap(String relationId, Role role, List oldRoleValue)
     Handles update of the Relation Service role map for the update of given role in given relation.



Method Detail
addRelation
public void addRelation(ObjectName objectName) throws IllegalArgumentException, RelationServiceNotRegisteredException, NoSuchMethodException, InvalidRelationIdException, InstanceNotFoundException, InvalidRelationServiceException, RelationTypeNotFoundException, RoleNotFoundException, InvalidRoleValueException(Code)
Adds a MBean created by te user (and registered by him in the MBean Server) as a relation in the Relation Service.

To be added as a relation, the MBean must conform to the following:

- implement the Relation interface

- have for RelationService ObjectName the ObjectName of current Relation Service

- have a relation id unique and unused in current Relation Service

- have for relation type a relation type created in the Relation Service

- have roles conforming to the role info provided in the relation type.
Parameters:
  objectName - ObjectName of the relation MBean to be added.
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server
exception:
  NoSuchMethodException - If the MBean does not implement theRelation interface
exception:
  InvalidRelationIdException - if:

- no relation identifier in MBean

- the relation identifier is already used in the Relation Service
exception:
  javax.management.InstanceNotFoundException - if the MBean for given ObjectNamehas not been registered
exception:
  InvalidRelationServiceException - if:

- no Relation Service name in MBean

- the Relation Service name in the MBean is not the one of thecurrent Relation Service
exception:
  RelationTypeNotFoundException - if:

- no relation type name in MBean

- the relation type name in MBean does not correspond to a relationtype created in the Relation Service
exception:
  InvalidRoleValueException - if:

- the number of referenced MBeans in a role is less thanexpected minimum degree

- the number of referenced MBeans in a role exceeds expectedmaximum degree

- one referenced MBean in the value is not an Object of the MBeanclass expected for that role

- a MBean provided for a role does not exist
exception:
  RoleNotFoundException - if a value is provided for a rolethat does not exist in the relation type




addRelationType
public void addRelationType(RelationType relationType) throws IllegalArgumentException, InvalidRelationTypeException(Code)
Adds given object as a relation type. The object is expected to implement the RelationType interface.
Parameters:
  relationType - relation type object (implementing theRelationType interface)
exception:
  IllegalArgumentException - if null parameter
exception:
  InvalidRelationTypeException - if there is already a relationtype with that name



checkRoleReading
public Integer checkRoleReading(String roleName, String relaionTypeName) throws IllegalArgumentException, RelationTypeNotFoundException(Code)
Checks if given Role can be read in a relation of the given type.
Parameters:
  roleName - name of role to be checked
Parameters:
  relaionTypeName - name of the relation type an Integer wrapping an integer corresponding to possibleproblems represented as constants in RoleUnresolved:

- 0 if role can be read

- integer corresponding to RoleStatus.NO_ROLE_WITH_NAME

- integer corresponding to RoleStatus.ROLE_NOT_READABLE
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationTypeNotFoundException - if the relation type is notknown in the Relation Service




checkRoleWriting
public Integer checkRoleWriting(Role role, String relTypeName, Boolean initFlag) throws IllegalArgumentException, RelationTypeNotFoundException(Code)
Checks if given Role can be set in a relation of given type.
Parameters:
  role - role to be checked
Parameters:
  relTypeName - name of relation type
Parameters:
  initFlag - flag to specify that the checking is done for theinitialisation of a role, write access shall not be verified. an Integer wrapping an integer corresponding to possibleproblems represented as constants in RoleUnresolved:

- 0 if role can be set

- integer corresponding to RoleStatus.NO_ROLE_WITH_NAME

- integer for RoleStatus.ROLE_NOT_WRITABLE

- integer for RoleStatus.LESS_THAN_MIN_ROLE_DEGREE

- integer for RoleStatus.MORE_THAN_MAX_ROLE_DEGREE

- integer for RoleStatus.REF_MBEAN_OF_INCORRECT_CLASS

- integer for RoleStatus.REF_MBEAN_NOT_REGISTERED
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationTypeNotFoundException - if unknown relation type




createRelation
public void createRelation(String relationId, String relTypeName, RoleList roleList) throws RelationServiceNotRegisteredException, IllegalArgumentException, RoleNotFoundException, InvalidRelationIdException, RelationTypeNotFoundException, InvalidRoleValueException(Code)
Creates a simple relation (represented by a RelationSupport object) of given relation type, and adds it in the Relation Service.

Roles are initialized according to the role list provided in parameter. The ones not initialised using that mean are set to an empty ArrayList of ObjectNames.

A RelationNotification, with type RELATION_BASIC_CREATION, is sent.
Parameters:
  relationId - relation identifier, to uniquely identify the relationinside the Relation Service
Parameters:
  relTypeName - name of the relation type (has to be createdin the Relation Service)
Parameters:
  roleList - role list to initialise roles of the relation (canbe null).
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server
exception:
  IllegalArgumentException - if null paramater
exception:
  RoleNotFoundException - if a value is provided for a rolethat does not exist in the relation type
exception:
  InvalidRelationIdException - if relation id already used
exception:
  RelationTypeNotFoundException - if relation type not known inRelation Service
exception:
  InvalidRoleValueException - if:

- the same role name is used for two different roles

- the number of referenced MBeans in given value is less thanexpected minimum degree

- the number of referenced MBeans in provided value exceeds expectedmaximum degree

- one referenced MBean in the value is not an Object of the MBeanclass expected for that role

- a MBean provided for that role does not exist




createRelationType
public void createRelationType(String relTypeName, RoleInfo[] roleInfoArray) throws IllegalArgumentException, InvalidRelationTypeException(Code)
Creates a relation type (RelationTypeSupport object) with given role infos (provided by the RoleInfo objects), and adds it in the Relation Service.
Parameters:
  relTypeName - name of the relation type
Parameters:
  roleInfoArray - array of role infos
exception:
  IllegalArgumentException - if null parameter
exception:
  InvalidRelationTypeException - If:

- there is already a relation type with that name

- the same name has been used for two different role infos

- no role info provided

- one null role info provided




findAssociatedMBeans
public Map findAssociatedMBeans(ObjectName mbeanObjectName, String relTypeName, String roleName) throws IllegalArgumentException(Code)
Retrieves the MBeans associated to given one in a relation.

This corresponds to CIM Associators and AssociatorNames operations.
Parameters:
  mbeanObjectName - ObjectName of MBean
Parameters:
  relTypeName - can be null; if specified, only the relationsof that type will be considered in the search. Else allrelation types are considered.
Parameters:
  roleName - can be null; if specified, only the relationswhere the MBean is referenced in that role will be considered. Else allroles are considered. an HashMap, where the keys are the ObjectNames of the MBeansassociated to given MBean, and the value is, for each key, an ArrayListof the relation ids of the relations where the key MBean isassociated to given one (as they can be associated in several differentrelations).
exception:
  IllegalArgumentException - if null parameter




findReferencingRelations
public Map findReferencingRelations(ObjectName mbeanObjectName, String relTypeName, String roleName) throws IllegalArgumentException(Code)
Retrieves the relations where a given MBean is referenced.

This corresponds to the CIM "References" and "ReferenceNames" operations.
Parameters:
  mbeanObjectName - ObjectName of MBean
Parameters:
  relTypeName - can be null; if specified, only the relationsof that type will be considered in the search. Else all relation typesare considered.
Parameters:
  roleName - can be null; if specified, only the relationswhere the MBean is referenced in that role will be returned. Else allroles are considered. an HashMap, where the keys are the relation ids of the relationswhere the MBean is referenced, and the value is, for each key,an ArrayList of role names (as a MBean can be referenced in severalroles in the same relation).
exception:
  IllegalArgumentException - if null parameter




findRelationsOfType
public List findRelationsOfType(String relTypeName) throws IllegalArgumentException, RelationTypeNotFoundException(Code)
Returns the relation ids for relations of the given type.
Parameters:
  relTypeName - relation type name an ArrayList of relation ids.
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationTypeNotFoundException - if there is no relation typewith that name.



getAllRelationIds
public List getAllRelationIds()(Code)
Returns all the relation ids for all the relations handled by the Relation Service ArrayList of String



getAllRelationTypeNames
public List getAllRelationTypeNames()(Code)
Retrieves names of all known relation types ArrayList of relation type names (Strings)



getAllRoles
public RoleResult getAllRoles(String relationId) throws IllegalArgumentException, RelationNotFoundException, RelationServiceNotRegisteredException(Code)
Returns all roles present in the relation
Parameters:
  relationId - relation id a RoleResult object, including a RoleList (for rolessucccessfully retrieved) and a RoleUnresolvedList (for roles notreadable).
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation for given id
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server



getPurgeFlag
public boolean getPurgeFlag()(Code)
Returns the flag to indicate if when a notification is received for the unregistration of a MBean referenced in a relation, if an immediate "purge" of the relations (look for the relations no longer valid) has to be performed , or if that will be performed only when the purgeRelations method will be explicitly called.

true is immediate purge.




getReferencedMBeans
public Map getReferencedMBeans(String relationId) throws IllegalArgumentException, RelationNotFoundException(Code)
Retrieves MBeans referenced in the various roles of the relation.
Parameters:
  relationId - relation id a HashMap mapping:

ObjectName -> ArrayList of String (rolenames)
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation for givenrelation id




getRelationTypeName
public String getRelationTypeName(String relationId) throws IllegalArgumentException, RelationNotFoundException(Code)
Returns name of associated relation type for given relation.
Parameters:
  relationId - relation id
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation for givenrelation id



getRole
public List getRole(String relationId, String roleName) throws RelationServiceNotRegisteredException, IllegalArgumentException, RelationNotFoundException, RoleNotFoundException(Code)
Retrieves role value for given role name in given relation.
Parameters:
  relationId - relation id
Parameters:
  roleName - name of role the ArrayList of ObjectName objects being the role value
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation with given id
exception:
  RoleNotFoundException - if:

- there is no role with given name

or

- the role is not readable.




getRoleCardinality
public Integer getRoleCardinality(String relationId, String roleName) throws IllegalArgumentException, RelationNotFoundException, RoleNotFoundException(Code)
Retrieves the number of MBeans currently referenced in the given role
Parameters:
  relationId - relation id
Parameters:
  roleName - name of role the number of currently referenced MBeans in that role
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation with given id
exception:
  RoleNotFoundException - if there is no role with given name



getRoleInfo
public RoleInfo getRoleInfo(String relTypeName, String roleInfoName) throws IllegalArgumentException, RelationTypeNotFoundException, RoleInfoNotFoundException(Code)
Retrieves role info for given role of a given relation type
Parameters:
  relTypeName - name of relation type
Parameters:
  roleInfoName - name of role RoleInfo object.
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationTypeNotFoundException - if the relation type is notknown in the Relation Service
exception:
  RoleInfoNotFoundException - if the role is not part of therelation type.



getRoleInfos
public List getRoleInfos(String relTypeName) throws IllegalArgumentException, RelationTypeNotFoundException(Code)
Retrieves list of role infos (RoleInfo objects) of a given relation type
Parameters:
  relTypeName - name of relation type ArrayList of RoleInfo.
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationTypeNotFoundException - if there is no relation typewith that name.



getRoles
public RoleResult getRoles(String relationId, String[] roleNames) throws RelationServiceNotRegisteredException, IllegalArgumentException, RelationNotFoundException(Code)
Retrieves values of roles with given names in given relation.
Parameters:
  relationId - relation id
Parameters:
  roleNames - array of names of roles to be retrieved a RoleResult object, including a RoleList (for rolessucccessfully retrieved) and a RoleUnresolvedList (for roles notretrieved).
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation with given id



hasRelation
public Boolean hasRelation(String relationId) throws IllegalArgumentException(Code)
Checks if there is a relation identified in Relation Service with given relation id.
Parameters:
  relationId - relation id identifying the relation boolean: true if there is a relation, false else
exception:
  IllegalArgumentException - if null parameter



isActive
public void isActive() throws RelationServiceNotRegisteredException(Code)
Checks if the Relation Service is active. Current condition is that the Relation Service must be registered in the MBean Server
exception:
  RelationServiceNotRegisteredException - if it is notregistered



isRelation
public String isRelation(ObjectName objectName) throws IllegalArgumentException(Code)
Returns the relation id associated to the given ObjectName if the MBean has been added as a relation in the Relation Service.
Parameters:
  objectName - ObjectName of supposed relation relation id (String) or null (if the ObjectName is not arelation handled by the Relation Service)
exception:
  IllegalArgumentException - if null parameter



isRelationMBean
public ObjectName isRelationMBean(String relationId) throws IllegalArgumentException, RelationNotFoundException(Code)
If the relation is represented by a MBean (created by the user and added as a relation in the Relation Service), returns the ObjectName of the MBean.
Parameters:
  relationId - relation id identifying the relation ObjectName of the corresponding relation MBean, or null ifthe relation is not a MBean.
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - there is no relation associatedto that id



purgeRelations
public void purgeRelations() throws RelationServiceNotRegisteredException(Code)
Purges the relations.

Depending on the purgeFlag value, this method is either called automatically when a notification is received for the unregistration of a MBean referenced in a relation (if the flag is set to true), or not (if the flag is set to false).

In that case it is up to the user to call it to maintain the consistency of the relations. To be kept in mind that if a MBean is unregistered and the purge not done immediately, if the ObjectName is reused and assigned to another MBean referenced in a relation, calling manually this purgeRelations() method will cause trouble, as will consider the ObjectName as corresponding to the unregistered MBean, not seeing the new one.

The behavior depends on the cardinality of the role where the unregistered MBean is referenced:

- if removing one MBean reference in the role makes its number of references less than the minimum degree, the relation has to be removed.

- if the remaining number of references after removing the MBean reference is still in the cardinality range, keep the relation and update it calling its handleMBeanUnregistration() callback.
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server.




removeRelation
public void removeRelation(String relationId) throws RelationServiceNotRegisteredException, IllegalArgumentException, RelationNotFoundException(Code)
Removes given relation from the Relation Service.

A RelationNotification notification is sent, its type being:

- RelationNotification.RELATION_BASIC_REMOVAL if the relation was only internal to the Relation Service

- RelationNotification.RELATION_MBEAN_REMOVAL if the relation is registered as a MBean.

For MBeans referenced in such relation, nothing will be done,
Parameters:
  relationId - relation id of the relation to be removed
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation corresponding togiven relation id




removeRelationType
public void removeRelationType(String relTypeName) throws RelationServiceNotRegisteredException, IllegalArgumentException, RelationTypeNotFoundException(Code)
Removes given relation type from Relation Service.

The relation objects of that type will be removed from the Relation Service.
Parameters:
  relTypeName - name of the relation type to be removed
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationTypeNotFoundException - If there is no relation typewith that name




sendRelationCreationNotification
public void sendRelationCreationNotification(String relationId) throws IllegalArgumentException, RelationNotFoundException(Code)
Sends a notification (RelationNotification) for a relation creation. The notification type is:

- RelationNotification.RELATION_BASIC_CREATION if the relation is an object internal to the Relation Service

- RelationNotification.RELATION_MBEAN_CREATION if the relation is a MBean added as a relation.

The source object is the Relation Service itself.

It is called in Relation Service createRelation() and addRelation() methods.
Parameters:
  relationId - relation identifier of the updated relation
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if there is no relation for givenrelation id




sendRelationRemovalNotification
public void sendRelationRemovalNotification(String relaionId, List unregMBeanList) throws IllegalArgumentException, RelationNotFoundException(Code)
Sends a notification (RelationNotification) for a relation removal. The notification type is:

- RelationNotification.RELATION_BASIC_REMOVAL if the relation is an object internal to the Relation Service

- RelationNotification.RELATION_MBEAN_REMOVAL if the relation is a MBean added as a relation.

The source object is the Relation Service itself.

It is called in Relation Service removeRelation() method.
Parameters:
  relaionId - relation identifier of the updated relation
Parameters:
  unregMBeanList - ArrayList of ObjectNames of MBeans expectedto be unregistered due to relation removal (can be null)
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if there is no relation for givenrelation id




sendRoleUpdateNotification
public void sendRoleUpdateNotification(String relationId, Role newRole, List oldRoleValue) throws IllegalArgumentException, RelationNotFoundException(Code)
Sends a notification (RelationNotification) for a role update in the given relation. The notification type is:

- RelationNotification.RELATION_BASIC_UPDATE if the relation is an object internal to the Relation Service

- RelationNotification.RELATION_MBEAN_UPDATE if the relation is a MBean added as a relation.

The source object is the Relation Service itself.

It is called in relation MBean setRole() (for given role) and setRoles() (for each role) methods (implementation provided in RelationSupport class).

It is also called in Relation Service setRole() (for given role) and setRoles() (for each role) methods.
Parameters:
  relationId - relation identifier of the updated relation
Parameters:
  newRole - new role (name and new value)
Parameters:
  oldRoleValue - old role value (ArrayList of ObjectName objects)
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if there is no relation for givenrelation id




setPurgeFlag
public void setPurgeFlag(boolean purgeFlag)(Code)
Sets the flag to indicate if when a notification is received for the unregistration of a MBean referenced in a relation, if an immediate "purge" of the relations (look for the relations no longer valid) has to be performed , or if that will be performed only when the purgeRelations method will be explicitly called.

true is immediate purge.
Parameters:
  purgeFlag - flag




setRole
public void setRole(String relationId, Role role) throws RelationServiceNotRegisteredException, IllegalArgumentException, RelationNotFoundException, RoleNotFoundException, InvalidRoleValueException, RelationTypeNotFoundException(Code)
Sets the given role in given relation.

Will check the role according to its corresponding role definition provided in relation's relation type

The Relation Service will keep track of the change to keep the consistency of relations by handling referenced MBean unregistrations.
Parameters:
  relationId - relation id
Parameters:
  role - role to be set (name and new value)
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation with given id
exception:
  RoleNotFoundException - if:

- internal relation

and

- the role does not exist or is not writable
exception:
  InvalidRoleValueException - if internal relation and valueprovided for role is not valid:

- the number of referenced MBeans in given value is less thanexpected minimum degree

or

- the number of referenced MBeans in provided value exceeds expectedmaximum degree

or

- one referenced MBean in the value is not an Object of the MBeanclass expected for that role

or

- a MBean provided for that role does not exist
exception:
  RelationTypeNotFoundException - if unknown relation type




setRoles
public RoleResult setRoles(String relationId, RoleList roleList) throws RelationServiceNotRegisteredException, IllegalArgumentException, RelationNotFoundException(Code)
Sets the given roles in given relation.

Will check the role according to its corresponding role definition provided in relation's relation type

The Relation Service keeps track of the changes to keep the consistency of relations by handling referenced MBean unregistrations.
Parameters:
  relationId - relation id
Parameters:
  roleList - list of roles to be set a RoleResult object, including a RoleList (for rolessucccessfully set) and a RoleUnresolvedList (for roles notset).
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationNotFoundException - if no relation with given id




updateRoleMap
public void updateRoleMap(String relationId, Role role, List oldRoleValue) throws IllegalArgumentException, RelationServiceNotRegisteredException, RelationNotFoundException(Code)
Handles update of the Relation Service role map for the update of given role in given relation.

It is called in relation MBean setRole() (for given role) and setRoles() (for each role) methods (implementation provided in RelationSupport class).

It is also called in Relation Service setRole() (for given role) and setRoles() (for each role) methods.

To allow the Relation Service to maintain the consistency (in case of MBean unregistration) and to be able to perform queries, this method must be called when a role is updated.
Parameters:
  relationId - relation identifier of the updated relation
Parameters:
  role - new role (name and new value)
Parameters:
  oldRoleValue - old role value (ArrayList of ObjectName objects)
exception:
  IllegalArgumentException - if null parameter
exception:
  RelationServiceNotRegisteredException - if the RelationService is not registered in the MBean Server
exception:
  RelationNotFoundException - if no relation for given id.




www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.