- /*
- * @(#)RelationType.java 1.17 03/12/19
- *
- * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
- * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
- */
-
- package javax.management.relation;
-
- import java.util.ArrayList; // for Javadoc
- import java.util.List;
-
- import java.io.Serializable;
-
- /**
- * The RelationType interface has to be implemented by any class expected to
- * represent a relation type.
- *
- * @since 1.5
- */
- public interface RelationType extends Serializable {
-
- //
- // Accessors
- //
-
- /**
- * Returns the relation type name.
- *
- * @return the relation type name.
- */
- public String getRelationTypeName();
-
- /**
- * Returns the list of role definitions (ArrayList of RoleInfo objects).
- *
- * @return an {@link ArrayList} of {@link RoleInfo}.
- */
- public List getRoleInfos();
-
- /**
- * Returns the role info (RoleInfo object) for the given role info name
- * (null if not found).
- *
- * @param theRoleInfoName role info name
- *
- * @return RoleInfo object providing role definition
- * does not exist
- *
- * @exception IllegalArgumentException if null parameter
- * @exception RoleInfoNotFoundException if no role info with that name in
- * relation type.
- */
- public RoleInfo getRoleInfo(String theRoleInfoName)
- throws IllegalArgumentException,
- RoleInfoNotFoundException;
- }