# Interface PrincipalComparator

public interface PrincipalComparator
An object that implements the `java.security.Principal` interface typically also implements this interface to provide a means for comparing that object to a specified `Subject`.

The comparison is achieved via the `implies` method. The implementation of the `implies` method determines whether this object "implies" the specified `Subject`. One example application of this method may be for a "group" object to imply a particular `Subject` if that `Subject` belongs to the group. Another example application of this method would be for "role" object to imply a particular `Subject` if that `Subject` is currently acting in that role.

Although classes that implement this interface typically also implement the `java.security.Principal` interface, it is not required. In other words, classes may implement the `java.security.Principal` interface by itself, the `PrincipalComparator` interface by itself, or both at the same time.

Since:
  1.4
See Also:
  - `Principal`
  - `Subject`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`implies(Subject subject)`
Check if the specified `Subject` is implied by this object.

## Method Details

### implies

boolean implies(Subject subject)
Check if the specified `Subject` is implied by this object.

Parameters:
  `subject` - the subject to compare
Returns:
  true if the specified `Subject` is implied by this object, or false otherwise.