Class IdentifiedUser

java.lang.Object
com.google.gerrit.server.CurrentUser
com.google.gerrit.server.IdentifiedUser

public class IdentifiedUser extends CurrentUser
An authenticated user.
  • Method Details

    • getRealUser

      public CurrentUser getRealUser()
      Description copied from class: CurrentUser
      Identity of the authenticated user.

      In the normal case where a user authenticates as themselves getRealUser() == this.

      If X-Gerrit-RunAs or suexec was used this method returns the identity of the account that has permission to act on behalf of this user.

      Overrides:
      getRealUser in class CurrentUser
    • isImpersonating

      public boolean isImpersonating()
      Overrides:
      isImpersonating in class CurrentUser
    • state

      public AccountState state()
      Returns the account state of the identified user.
      Returns:
      the account state of the identified user, an empty account state if the account is missing
    • asIdentifiedUser

      public IdentifiedUser asIdentifiedUser()
      Description copied from class: CurrentUser
      Cast to IdentifiedUser if possible.
      Overrides:
      asIdentifiedUser in class CurrentUser
    • getAccountId

      public Account.Id getAccountId()
      Description copied from class: CurrentUser
      Return account ID if CurrentUser.isIdentifiedUser() is true.
      Overrides:
      getAccountId in class CurrentUser
    • getUserName

      public Optional<String> getUserName()
      Returns the user's user name; null if one has not been selected/assigned or if the user name is empty.
      Overrides:
      getUserName in class CurrentUser
    • getLoggableName

      public String getLoggableName()
      Returns unique name of the user for logging, never null
      Overrides:
      getLoggableName in class CurrentUser
    • getAccount

      public Account getAccount()
      Returns the account of the identified user.
      Returns:
      the account of the identified user, an empty account if the account is missing
    • hasEmailAddress

      public boolean hasEmailAddress(String email)
    • getEmailAddresses

      public com.google.common.collect.ImmutableSet<String> getEmailAddresses()
      Description copied from class: CurrentUser
      Returns all email addresses associated with this user. For AnonymousUser and other users that don't represent a person user or service account, this set will be empty.
      Overrides:
      getEmailAddresses in class CurrentUser
    • getExternalIdKeys

      public com.google.common.collect.ImmutableSet<ExternalId.Key> getExternalIdKeys()
      Description copied from class: CurrentUser
      Returns all ExternalId.Keys associated with this user. For AnonymousUser and other users that don't represent a person user or service account, this set will be empty.
      Overrides:
      getExternalIdKeys in class CurrentUser
    • getName

      public String getName()
    • getNameEmail

      public String getNameEmail()
    • getEffectiveGroups

      public GroupMembership getEffectiveGroups()
      Description copied from class: CurrentUser
      Get the set of groups the user is currently a member of.

      The returned set may be a subset of the user's actual groups; if the user's account is currently deemed to be untrusted then the effective group set is only the anonymous and registered user groups. To enable additional groups (and gain their granted permissions) the user must update their account to use only trusted authentication providers.

      Specified by:
      getEffectiveGroups in class CurrentUser
      Returns:
      active groups for this user.
    • getCacheKey

      public Object getCacheKey()
      Description copied from class: CurrentUser
      Returns a unique identifier for this user that is intended to be used as a cache key. Returned object should to implement equals() and hashCode() for effective caching.
      Specified by:
      getCacheKey in class CurrentUser
    • getRemotePeer

      public SocketAddress getRemotePeer()
    • newRefLogIdent

      public org.eclipse.jgit.lib.PersonIdent newRefLogIdent()
    • newRefLogIdent

      public org.eclipse.jgit.lib.PersonIdent newRefLogIdent(Instant when, ZoneId zoneId)
    • newCommitterIdent

      public org.eclipse.jgit.lib.PersonIdent newCommitterIdent(org.eclipse.jgit.lib.PersonIdent ident)
    • newCommitterIdent

      public org.eclipse.jgit.lib.PersonIdent newCommitterIdent(Instant when, ZoneId zoneId)
    • newCommitterIdent

      public Optional<org.eclipse.jgit.lib.PersonIdent> newCommitterIdent(String email, Instant when, ZoneId zoneId)
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • isIdentifiedUser

      public boolean isIdentifiedUser()
      Check if user is the IdentifiedUser
      Overrides:
      isIdentifiedUser in class CurrentUser
    • materializedCopy

      public IdentifiedUser materializedCopy()
      Returns a materialized copy of the user with all dependencies.

      Invoke all providers and factories of dependent objects and store the references to a copy of the current identified user.

      Returns:
      copy of the identified user
    • hasSameAccountId

      public boolean hasSameAccountId(CurrentUser other)
      Description copied from class: CurrentUser
      Checks if the current user has the same account id of another.

      Provide a generic interface for allowing subclasses to define whether two accounts represent the same account id.

      Overrides:
      hasSameAccountId in class CurrentUser
      Parameters:
      other - user to compare
      Returns:
      true if the two users have the same account id
    • getCommitterName

      protected String getCommitterName(Account ua, String email)