public class RelationTypeSupport extends Object implements RelationType
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.
The serialVersionUID of this class is 4611072955724144607L.
| Modifier | Constructor and Description |
|---|---|
protected |
RelationTypeSupport(String relationTypeName)
Constructor to be used for subclasses.
|
|
RelationTypeSupport(String relationTypeName,
RoleInfo[] roleInfoArray)
Constructor where all role definitions are dynamically created and
passed as parameter.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
addRoleInfo(RoleInfo roleInfo)
Add a role info.
|
String |
getRelationTypeName()
Returns the relation type name.
|
RoleInfo |
getRoleInfo(String roleInfoName)
Returns the role info (RoleInfo object) for the given role info name
(null if not found).
|
List<RoleInfo> |
getRoleInfos()
Returns the list of role definitions (ArrayList of RoleInfo objects).
|
public RelationTypeSupport(String relationTypeName, RoleInfo[] roleInfoArray) throws IllegalArgumentException, InvalidRelationTypeException
relationTypeName - Name of relation typeroleInfoArray - List of role definitions (RoleInfo objects)IllegalArgumentException - if null parameterInvalidRelationTypeException - if:
- the same name has been used for two different roles
- no role info provided
- one null role info provided
protected RelationTypeSupport(String relationTypeName)
relationTypeName - Name of relation type.IllegalArgumentException - if null parameter.public String getRelationTypeName()
getRelationTypeName in interface RelationTypepublic List<RoleInfo> getRoleInfos()
getRoleInfos in interface RelationTypeArrayList of RoleInfo.public RoleInfo getRoleInfo(String roleInfoName) throws IllegalArgumentException, RoleInfoNotFoundException
getRoleInfo in interface RelationTyperoleInfoName - role info nameIllegalArgumentException - if null parameterRoleInfoNotFoundException - if no role info with that name in
relation type.protected void addRoleInfo(RoleInfo roleInfo) throws IllegalArgumentException, InvalidRelationTypeException
roleInfo - role info to be added.IllegalArgumentException - if null parameter.InvalidRelationTypeException - if there is already a role
info in current relation type with the same name. Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.