Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.management.relation
Class RelationTypeSupport

    java.lang.Object
      |
      +--javax.management.relation.RelationTypeSupport

All Implemented Interfaces:
  RelationType, java.io.Serializable

public class RelationTypeSupport
extends java.lang.Object
implements RelationType

A RelationTypeSupport object implements the RelationType interface.

It represents a relation type, providing role information for each role expected to be supported in every relation of that type.

A relation type includes a relation type name and a list of role infos (represented by RoleInfo objects).

A relation type has to be declared in the Relation Service:

- either using the createRelationType() method, where a RelationTypeSupport object will be created and kept in the Relation Service

- either using the addRelationType() method where the user has to create an object implementing the RelationType interface, and this object will be used as representing a relation type in the Relation Service.

Author:
  Young Yang
See Also:
  Serialized Form

Constructor Summary
`protected` | `RelationTypeSupport(java.lang.String relationTypeName)`
`` | `RelationTypeSupport(java.lang.String relationTypeName, RoleInfo[] roleInfoArray)` Constructor where all role definitions are dynamically created and passed as parameter.

Method Summary
`protected void` | `addRoleInfo(RoleInfo roleInfo)`
`java.lang.String` | `getRelationTypeName()` Returns the relation type name
`RoleInfo` | `getRoleInfo(java.lang.String roleName)` Returns the role info (RoleInfo object) for the given role info name (null if not found).
`java.util.List` | `getRoleInfos()` Returns the list of role definitions (ArrayList of RoleInfo objects).

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### RelationTypeSupport

    public RelationTypeSupport(java.lang.String relationTypeName,
                               RoleInfo[] roleInfoArray)
                        throws java.lang.IllegalArgumentException,
                               InvalidRelationTypeException

  Constructor where all role definitions are dynamically created and passed as parameter.

Parameters:
  `relationTypeName` - Name of relation type
  `roleInfoArray` - List of role definitions (RoleInfo objects)
Throws:
  `java.lang.IllegalArgumentException` - if null parameter
  `InvalidRelationTypeException` - if:

  - the same name has been used for two different roles

  - no role info provided

  - one null role info provided

### RelationTypeSupport

    protected RelationTypeSupport(java.lang.String relationTypeName)

Method Detail

### getRelationTypeName

    public java.lang.String getRelationTypeName()

  Returns the relation type name

  Specified by:
    `getRelationTypeName` in interface `RelationType`

### getRoleInfos

    public java.util.List getRoleInfos()

  Returns the list of role definitions (ArrayList of RoleInfo objects).

  Specified by:
    `getRoleInfos` in interface `RelationType`

### getRoleInfo

    public RoleInfo getRoleInfo(java.lang.String roleName)
                         throws java.lang.IllegalArgumentException,
                                RoleInfoNotFoundException

  Returns the role info (RoleInfo object) for the given role info name (null if not found).

  Specified by:
    `getRoleInfo` in interface `RelationType`
  Parameters:
    `roleName` - role info name
  Returns:
    RoleInfo object providing role definition does not exist
  Throws:
    `java.lang.IllegalArgumentException` - if null parameter
    `RoleInfoNotFoundException` - if no role info with that name in relation type.

### addRoleInfo

    protected void addRoleInfo(RoleInfo roleInfo)
                        throws java.lang.IllegalArgumentException,
                               InvalidRelationTypeException

    `java.lang.IllegalArgumentException`
    `InvalidRelationTypeException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD