UserGroupInformation { @InterfaceAudience.Private @InterfaceStability.Unstable @VisibleForTesting public static void setLoginUser(UserGroupInformation ugi) { loginUserRef.set(ugi); } UserGroupInformation(Subject subject); @VisibleForTesting static void setShouldRenewImmediatelyForTests(boolean immediate); static void reattachMetrics(); static boolean isInitialized(); @InterfaceAudience.Public @InterfaceStability.Evolving static void setConfiguration(Configuration conf); @InterfaceAudience.Private @VisibleForTesting static void reset(); static boolean isSecurityEnabled(); boolean hasKerberosCredentials(); @InterfaceAudience.Public @InterfaceStability.Evolving static UserGroupInformation getCurrentUser(); static UserGroupInformation getBestUGI(
      String ticketCachePath, String user); @InterfaceAudience.Public @InterfaceStability.Evolving static UserGroupInformation getUGIFromTicketCache(
            String ticketCache, String user); static UserGroupInformation getUGIFromSubject(Subject subject); @InterfaceAudience.Public @InterfaceStability.Evolving static UserGroupInformation getLoginUser(); static String trimLoginMethod(String userName); @InterfaceAudience.Public @InterfaceStability.Evolving static void loginUserFromSubject(Subject subject); @InterfaceAudience.Private @InterfaceStability.Unstable @VisibleForTesting static void setLoginUser(UserGroupInformation ugi); boolean isFromKeytab(); @InterfaceAudience.Private @InterfaceStability.Unstable boolean shouldRelogin(); @InterfaceAudience.Public @InterfaceStability.Evolving static void loginUserFromKeytab(String user,
                                  String path
                                  ); @InterfaceAudience.Public @InterfaceStability.Evolving void logoutUserFromKeytab(); void checkTGTAndReloginFromKeytab(); @InterfaceAudience.Public @InterfaceStability.Evolving void reloginFromKeytab(); @InterfaceAudience.Public @InterfaceStability.Evolving void forceReloginFromKeytab(); @InterfaceAudience.Public @InterfaceStability.Evolving void reloginFromTicketCache(); static UserGroupInformation loginUserFromKeytabAndReturnUGI(String user,
                                  String path
                                  ); @InterfaceAudience.Public @InterfaceStability.Evolving static boolean isLoginKeytabBased(); static boolean isLoginTicketBased(); @InterfaceAudience.Public @InterfaceStability.Evolving static UserGroupInformation createRemoteUser(String user); @InterfaceAudience.Public @InterfaceStability.Evolving static UserGroupInformation createRemoteUser(String user, AuthMethod authMethod); @InterfaceAudience.Public @InterfaceStability.Evolving static UserGroupInformation createProxyUser(String user,
      UserGroupInformation realUser); @InterfaceAudience.Public @InterfaceStability.Evolving UserGroupInformation getRealUser(); @InterfaceAudience.Public @InterfaceStability.Evolving static UserGroupInformation createUserForTesting(String user, 
                                                          String[] userGroups); static UserGroupInformation createProxyUserForTesting(String user,
      UserGroupInformation realUser, String[] userGroups); String getShortUserName(); String getPrimaryGroupName(); @InterfaceAudience.Public @InterfaceStability.Evolving String getUserName(); synchronized boolean addTokenIdentifier(TokenIdentifier tokenId); synchronized Set<TokenIdentifier> getTokenIdentifiers(); boolean addToken(Token<? extends TokenIdentifier> token); boolean addToken(Text alias, Token<? extends TokenIdentifier> token); Collection<Token<? extends TokenIdentifier>> getTokens(); Credentials getCredentials(); void addCredentials(Credentials credentials); String[] getGroupNames(); @Deprecated List<String> getGroups(); Set<String> getGroupsSet(); @Override String toString(); synchronized void setAuthenticationMethod(AuthenticationMethod authMethod); void setAuthenticationMethod(AuthMethod authMethod); synchronized AuthenticationMethod getAuthenticationMethod(); synchronized AuthenticationMethod getRealAuthenticationMethod(); static AuthenticationMethod getRealAuthenticationMethod(
      UserGroupInformation ugi); @Override boolean equals(Object o); @Override int hashCode(); @InterfaceAudience.Public @InterfaceStability.Evolving T doAs(PrivilegedAction<T> action); @InterfaceAudience.Public @InterfaceStability.Evolving T doAs(PrivilegedExceptionAction<T> action
                    ); @InterfaceAudience.LimitedPrivate({"HDFS", "KMS"}) @InterfaceStability.Unstable static void logUserInfo(Logger log, String caption,
      UserGroupInformation ugi); @InterfaceAudience.LimitedPrivate({"HDFS", "KMS"}) @InterfaceStability.Unstable static void logAllUserInfo(Logger log, UserGroupInformation ugi); static void logAllUserInfo(UserGroupInformation ugi); static void main(String [] args); static final String HADOOP_TOKEN_FILE_LOCATION; static final String HADOOP_TOKEN; }
@Test(timeout=10000) public void testSetLoginUser() throws IOException { UserGroupInformation ugi = UserGroupInformation.createRemoteUser("test-user"); UserGroupInformation.setLoginUser(ugi); assertEquals(ugi, UserGroupInformation.getLoginUser()); }