public class org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule extends java.lang.Object implements javax.security.auth.spi.LoginModule
{
public static final java.lang.String OAUTHBEARER_MECHANISM;
private static final org.slf4j.Logger log;
private static final org.apache.kafkaesque.common.security.auth.SaslExtensions EMPTY_EXTENSIONS;
private javax.security.auth.Subject subject;
private org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler callbackHandler;
private org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit;
private org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken myCommittedToken;
private org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit;
private org.apache.kafkaesque.common.security.auth.SaslExtensions myCommittedExtensions;
private org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState;
public void <init>()
{
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: javax.security.auth.Subject subject> = null;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler callbackHandler> = null;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit> = null;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken myCommittedToken> = null;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit> = null;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions myCommittedExtensions> = null;
return;
}
public void initialize(javax.security.auth.Subject, javax.security.auth.callback.CallbackHandler, java.util.Map, java.util.Map)
{
java.lang.Object[] v;
java.lang.IllegalArgumentException v;
javax.security.auth.Subject v;
javax.security.auth.callback.CallbackHandler v;
java.util.Map v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
java.lang.Class v, v;
java.lang.Object v, v;
java.lang.String v, v, v;
boolean v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
v := @parameter: javax.security.auth.Subject;
v := @parameter: javax.security.auth.callback.CallbackHandler;
v := @parameter: java.util.Map;
v := @parameter: java.util.Map;
v = staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object)>(v);
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: javax.security.auth.Subject subject> = v;
v = staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object)>(v);
v = v instanceof org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler;
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
v = newarray (java.lang.Object)[2];
v = class "Lorg/apache/kafkaesque/common/security/auth/AuthenticateCallbackHandler;";
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v[0] = v;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v[1] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Callback handler must be castable to %s: %s", v);
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler callbackHandler> = v;
return;
}
public boolean login() throws javax.security.auth.login.LoginException
{
java.lang.IllegalStateException v, v, v, v;
java.lang.Object[] v, v;
java.lang.Integer v, v, v;
int v, v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
java.lang.String v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState v, v, v, v, v;
org.slf4j.Logger v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken v, v, v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState>;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState LOGGED_IN_NOT_COMMITTED>;
if v != v goto label;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit>;
if v == null goto label;
v = new java.lang.IllegalStateException;
v = newarray (java.lang.Object)[1];
v = specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: int committedTokenCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Already have an uncommitted token with private credential token count=%d", v);
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Already logged in without a token");
throw v;
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState>;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState COMMITTED>;
if v != v goto label;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken myCommittedToken>;
if v == null goto label;
v = new java.lang.IllegalStateException;
v = newarray (java.lang.Object)[1];
v = specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: int committedTokenCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Already have a committed token with private credential token count=%d; must login on another login context or logout here first before reusing the same login context", v);
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Login has already been committed without a token");
throw v;
label:
specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: void identifyToken()>();
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit>;
if v == null goto label;
specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: void identifyExtensions()>();
goto label;
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Logged in without a token, this login cannot be used to establish client connections");
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState LOGGED_IN_NOT_COMMITTED>;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState> = v;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: int committedTokenCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Login succeeded; invoke commit() to commit it; current committed token count={}", v);
return 1;
}
private void identifyToken() throws javax.security.auth.login.LoginException
{
javax.security.auth.login.LoginException v, v;
java.lang.Object[] v;
javax.security.auth.callback.Callback[] v;
org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback v;
java.lang.String v, v, v, v, v, v;
org.slf4j.Logger v, v;
java.lang.Exception v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
v = new org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback;
specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback: void <init>()>();
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler callbackHandler>;
v = newarray (javax.security.auth.callback.Callback)[1];
v[0] = v;
interfaceinvoke v.<org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler: void handle(javax.security.auth.callback.Callback[])>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = virtualinvoke v.<java.lang.Exception: java.lang.String getMessage()>();
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>(v, v);
v = new javax.security.auth.login.LoginException;
specialinvoke v.<javax.security.auth.login.LoginException: void <init>(java.lang.String)>("An internal error occurred while retrieving token from callback handler");
throw v;
label:
v = virtualinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken token()>();
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit> = v;
v = virtualinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback: java.lang.String errorCode()>();
if v == null goto label;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback: java.lang.String errorCode()>();
v[0] = v;
v = virtualinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback: java.lang.String errorDescription()>();
v[1] = v;
v = virtualinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback: java.lang.String errorUri()>();
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("Login failed: {} : {} (URI={})", v);
v = new javax.security.auth.login.LoginException;
v = virtualinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerTokenCallback: java.lang.String errorDescription()>();
specialinvoke v.<javax.security.auth.login.LoginException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
catch java.io.IOException from label to label with label;
catch javax.security.auth.callback.UnsupportedCallbackException from label to label with label;
}
private void identifyExtensions() throws javax.security.auth.login.LoginException
{
javax.security.auth.login.LoginException v, v;
javax.security.auth.callback.UnsupportedCallbackException v;
javax.security.auth.callback.Callback[] v;
org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
java.lang.String v, v;
org.slf4j.Logger v, v, v;
java.io.IOException v;
org.apache.kafkaesque.common.security.auth.SaslExtensions v, v, v;
org.apache.kafkaesque.common.security.auth.SaslExtensionsCallback v;
java.lang.Class v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
v = new org.apache.kafkaesque.common.security.auth.SaslExtensionsCallback;
specialinvoke v.<org.apache.kafkaesque.common.security.auth.SaslExtensionsCallback: void <init>()>();
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler callbackHandler>;
v = newarray (javax.security.auth.callback.Callback)[1];
v[0] = v;
interfaceinvoke v.<org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler: void handle(javax.security.auth.callback.Callback[])>(v);
v = virtualinvoke v.<org.apache.kafkaesque.common.security.auth.SaslExtensionsCallback: org.apache.kafkaesque.common.security.auth.SaslExtensions extensions()>();
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit> = v;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>(v, v);
v = new javax.security.auth.login.LoginException;
specialinvoke v.<javax.security.auth.login.LoginException: void <init>(java.lang.String)>("An internal error occurred while retrieving SASL extensions from callback handler");
throw v;
label:
v := @caughtexception;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions EMPTY_EXTENSIONS>;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit> = v;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.AuthenticateCallbackHandler callbackHandler>;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("CallbackHandler {} does not support SASL extensions. No extensions will be added", v);
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit>;
if v != null goto label;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String)>("SASL Extensions cannot be null. Check whether your callback handler is explicitly setting them as null.");
v = new javax.security.auth.login.LoginException;
specialinvoke v.<javax.security.auth.login.LoginException: void <init>(java.lang.String)>("Extensions cannot be null.");
throw v;
label:
return;
catch java.io.IOException from label to label with label;
catch javax.security.auth.callback.UnsupportedCallbackException from label to label with label;
}
public boolean logout()
{
java.lang.IllegalStateException v;
java.lang.Integer v, v;
int v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
boolean v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState v, v, v, v, v;
org.slf4j.Logger v, v, v, v, v, v, v;
java.util.Iterator v;
java.util.function.Predicate v;
java.util.Set v, v;
javax.security.auth.Subject v, v;
org.apache.kafkaesque.common.security.auth.SaslExtensions v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken v, v;
java.lang.Object v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState>;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState LOGGED_IN_NOT_COMMITTED>;
if v != v goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Cannot call logout() immediately after login(); need to first invoke commit() or abort()");
throw v;
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState>;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState COMMITTED>;
if v == v goto label;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Nothing here to log out");
return 0;
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken myCommittedToken>;
if v == null goto label;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: int committedTokenCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object)>("Logging out my token; current committed token count = {}", v);
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: javax.security.auth.Subject subject>;
v = virtualinvoke v.<javax.security.auth.Subject: java.util.Set getPrivateCredentials()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken myCommittedToken>;
if v != v goto label;
interfaceinvoke v.<java.util.Iterator: void remove()>();
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken myCommittedToken> = null;
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: int committedTokenCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Done logging out my token; committed token count is now {}", v);
goto label;
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("No tokens to logout for this login");
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions myCommittedExtensions>;
if v == null goto label;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String)>("Logging out my extensions");
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: javax.security.auth.Subject subject>;
v = virtualinvoke v.<javax.security.auth.Subject: java.util.Set getPublicCredentials()>();
v = staticinvoke <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$lambda_logout_0__257: java.util.function.Predicate bootstrap$(org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule)>(v);
v = interfaceinvoke v.<java.util.Set: boolean removeIf(java.util.function.Predicate)>(v);
if v == 0 goto label;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions myCommittedExtensions> = null;
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Done logging out my extensions");
goto label;
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("No extensions to logout for this login");
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState NOT_LOGGED_IN>;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState> = v;
return 1;
}
public boolean commit()
{
java.lang.Integer v, v;
int v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState v, v, v;
org.slf4j.Logger v, v, v, v;
java.util.Set v, v;
javax.security.auth.Subject v, v;
org.apache.kafkaesque.common.security.auth.SaslExtensions v, v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken v, v, v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState>;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState LOGGED_IN_NOT_COMMITTED>;
if v == v goto label;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Nothing here to commit");
return 0;
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit>;
if v == null goto label;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: int committedTokenCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object)>("Committing my token; current committed token count = {}", v);
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: javax.security.auth.Subject subject>;
v = virtualinvoke v.<javax.security.auth.Subject: java.util.Set getPrivateCredentials()>();
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit>;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken myCommittedToken> = v;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit> = null;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
v = specialinvoke v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: int committedTokenCount()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Done committing my token; committed token count is now {}", v);
goto label;
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("No tokens to commit, this login cannot be used to establish client connections");
label:
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit>;
if v == null goto label;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: javax.security.auth.Subject subject>;
v = virtualinvoke v.<javax.security.auth.Subject: java.util.Set getPublicCredentials()>();
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit>;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions myCommittedExtensions> = v;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit> = null;
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState COMMITTED>;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState> = v;
return 1;
}
public boolean abort()
{
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState v, v, v;
org.slf4j.Logger v, v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState>;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState LOGGED_IN_NOT_COMMITTED>;
if v != v goto label;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Login aborted");
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerToken tokenRequiringCommit> = null;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions extensionsRequiringCommit> = null;
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState NOT_LOGGED_IN>;
v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule$LoginState loginState> = v;
return 1;
label:
v = <org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Nothing here to abort");
return 0;
}
private int committedTokenCount()
{
int v;
org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule v;
java.util.Set v;
javax.security.auth.Subject v;
v := @this: org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule;
v = v.<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: javax.security.auth.Subject subject>;
v = virtualinvoke v.<javax.security.auth.Subject: java.util.Set getPrivateCredentials(java.lang.Class)>(class "Lorg/apache/kafkaesque/common/security/oauthbearer/OAuthBearerToken;");
v = interfaceinvoke v.<java.util.Set: int size()>();
return v;
}
static void <clinit>()
{
org.apache.kafkaesque.common.security.auth.SaslExtensions v;
org.slf4j.Logger v;
java.util.Map v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/kafkaesque/common/security/oauthbearer/OAuthBearerLoginModule;");
<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.slf4j.Logger log> = v;
v = new org.apache.kafkaesque.common.security.auth.SaslExtensions;
v = staticinvoke <java.util.Collections: java.util.Map emptyMap()>();
specialinvoke v.<org.apache.kafkaesque.common.security.auth.SaslExtensions: void <init>(java.util.Map)>(v);
<org.apache.kafkaesque.common.security.oauthbearer.OAuthBearerLoginModule: org.apache.kafkaesque.common.security.auth.SaslExtensions EMPTY_EXTENSIONS> = v;
staticinvoke <org.apache.kafkaesque.common.security.oauthbearer.internals.OAuthBearerSaslClientProvider: void initialize()>();
staticinvoke <org.apache.kafkaesque.common.security.oauthbearer.internals.OAuthBearerSaslServerProvider: void initialize()>();
return;
}
}