Class UserPrincipalLookupService

java.lang.Object
java.nio.file.attribute.UserPrincipalLookupService

public abstract class UserPrincipalLookupService extends Object
An object to lookup user and group principals by name. A UserPrincipal represents an identity that may be used to determine access rights to objects in a file system. A GroupPrincipal represents a group identity. A UserPrincipalLookupService defines methods to lookup identities by name or group name (which are typically user or account names). Whether names and group names are case sensitive or not depends on the implementation. The exact definition of a group is implementation specific but typically a group represents an identity created for administrative purposes so as to determine the access rights for the members of the group. In particular it is implementation specific if the namespace for names and groups is the same or is distinct. To ensure consistent and correct behavior across platforms it is recommended that this API be used as if the namespaces are distinct. In other words, the lookupPrincipalByName should be used to lookup users, and lookupPrincipalByGroupName should be used to lookup groups.
Since:
1.7
See Also:
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    Initializes a new instance of this class.
  • Method Summary

    Modifier and Type
    Method
    Description
    Lookup a group principal by group name.
    abstract UserPrincipal
    Lookup a user principal by name.

    Methods declared in class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
    Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.
    boolean
    Compares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    May cause performance issues, deadlocks and hangs.
    final Class<? extends Object>
    Answers the unique instance of java.lang.Class which represents the class of the receiver.
    int
    Answers an integer hash code for the receiver.
    final void
    Causes one thread which is waiting on the receiver to be made ready to run.
    final void
    Causes all threads which are waiting on the receiver to be made ready to run.
    Answers a string containing a concise, human-readable description of the receiver.
    final void
    Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll).
    final void
    wait(long time)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
    final void
    wait(long time, int frac)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
  • Constructor Details

    • UserPrincipalLookupService

      protected UserPrincipalLookupService()
      Initializes a new instance of this class.
  • Method Details

    • lookupPrincipalByName

      public abstract UserPrincipal lookupPrincipalByName(String name) throws IOException
      Lookup a user principal by name.
      Parameters:
      name - the string representation of the user principal to lookup
      Returns:
      a user principal
      Throws:
      UserPrincipalNotFoundException - the principal does not exist
      IOException - if an I/O error occurs
    • lookupPrincipalByGroupName

      public abstract GroupPrincipal lookupPrincipalByGroupName(String group) throws IOException
      Lookup a group principal by group name.

      Where an implementation does not support any notion of group then this method always throws UserPrincipalNotFoundException. Where the namespace for user accounts and groups is the same, then this method is identical to invoking lookupPrincipalByName.

      Parameters:
      group - the string representation of the group to lookup
      Returns:
      a group principal
      Throws:
      UserPrincipalNotFoundException - the principal does not exist or is not a group
      IOException - if an I/O error occurs