test_class.declarator: lcProvider
test_class.modifier: private
test_class.original_string: private LoginContextProviderImpl lcProvider;
test_class.type: LoginContextProviderImpl
test_class.var_name: lcProvider
test_class.file: oak-core/src/test/java/org/apache/jackrabbit/oak/security/authentication/LoginContextProviderImplTest.java
test_class.identifier: LoginContextProviderImplTest
test_class.superclass: extends AbstractSecurityTest
test_case.body: @Test(expected = LoginException.class)
      public void testGetLoginContextWithIncompleteProvider() throws Exception {
          String providerName = addProvider(false);
          ConfigurationParameters params = ConfigurationParameters.of(AuthenticationConfiguration.PARAM_CONFIG_SPI_NAME, providerName);
          LoginContextProvider provider = newLoginContextProviderImpl(params);
  
          // no getAppConfigurationEntry not found with configuration
          LoginContext ctx = provider.getLoginContext(new SimpleCredentials(getTestUser().getID(), getTestUser().getID().toCharArray()), null);
          ctx.login();
      }
test_case.class_method_signature: LoginContextProviderImplTest.testGetLoginContextWithIncompleteProvider()
test_case.full_signature: @Test(expected = LoginException.class) public void testGetLoginContextWithIncompleteProvider()
test_case.identifier: testGetLoginContextWithIncompleteProvider
test_case.invocations: addProvider of newLoginContextProviderImpl getLoginContext getID getTestUser toCharArray getID getTestUser login
test_case.modifiers: @Test(expected = LoginException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testGetLoginContextWithIncompleteProvider()
focal_class.declarator: log = LoggerFactory.getLogger(LoginContextProviderImpl.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger log = LoggerFactory.getLogger(LoginContextProviderImpl.class);
focal_class.type: Logger
focal_class.var_name: log
focal_class.declarator: appName
focal_class.modifier: private final
focal_class.original_string: private final String appName;
focal_class.type: String
focal_class.var_name: appName
focal_class.declarator: params
focal_class.modifier: private final
focal_class.original_string: private final ConfigurationParameters params;
focal_class.type: ConfigurationParameters
focal_class.var_name: params
focal_class.declarator: contentRepository
focal_class.modifier: private final
focal_class.original_string: private final ContentRepository contentRepository;
focal_class.type: ContentRepository
focal_class.var_name: contentRepository
focal_class.declarator: securityProvider
focal_class.modifier: private final
focal_class.original_string: private final SecurityProvider securityProvider;
focal_class.type: SecurityProvider
focal_class.var_name: securityProvider
focal_class.declarator: whiteboard
focal_class.modifier: private final
focal_class.original_string: private final Whiteboard whiteboard;
focal_class.type: Whiteboard
focal_class.var_name: whiteboard
focal_class.declarator: loginModuleMonitor
focal_class.modifier: private final
focal_class.original_string: private final LoginModuleMonitor loginModuleMonitor;
focal_class.type: LoginModuleMonitor
focal_class.var_name: loginModuleMonitor
focal_class.declarator: configuration
focal_class.modifier: private
focal_class.original_string: private Configuration configuration;
focal_class.type: Configuration
focal_class.var_name: configuration
focal_class.file: oak-core/src/main/java/org/apache/jackrabbit/oak/security/authentication/LoginContextProviderImpl.java
focal_class.identifier: LoginContextProviderImpl
focal_class.interfaces: implements LoginContextProvider
focal_class.class_method_signature: LoginContextProviderImpl.LoginContextProviderImpl(String appName, ConfigurationParameters params,
                               ContentRepository contentRepository,
                               SecurityProvider securityProvider,
                               Whiteboard whiteboard,
                               LoginModuleMonitor loginModuleMonitor)
focal_class.full_signature:   LoginContextProviderImpl(String appName, ConfigurationParameters params,
                               ContentRepository contentRepository,
                               SecurityProvider securityProvider,
                               Whiteboard whiteboard,
                               LoginModuleMonitor loginModuleMonitor)
focal_class.identifier: LoginContextProviderImpl
focal_class.parameters: (String appName, ConfigurationParameters params,
                               ContentRepository contentRepository,
                               SecurityProvider securityProvider,
                               Whiteboard whiteboard,
                               LoginModuleMonitor loginModuleMonitor)
focal_class.signature:  LoginContextProviderImpl(String appName, ConfigurationParameters params,
                               ContentRepository contentRepository,
                               SecurityProvider securityProvider,
                               Whiteboard whiteboard,
                               LoginModuleMonitor loginModuleMonitor)
focal_class.class_method_signature: LoginContextProviderImpl.getLoginContext(Credentials credentials, String workspaceName)
focal_class.full_signature: @Override @NotNull public LoginContext getLoginContext(Credentials credentials, String workspaceName)
focal_class.identifier: getLoginContext
focal_class.modifiers: @Override @NotNull public
focal_class.parameters: (Credentials credentials, String workspaceName)
focal_class.return: LoginContext
focal_class.signature: LoginContext getLoginContext(Credentials credentials, String workspaceName)
focal_class.class_method_signature: LoginContextProviderImpl.getSubject()
focal_class.full_signature: @Nullable private static Subject getSubject()
focal_class.identifier: getSubject
focal_class.modifiers: @Nullable private static
focal_class.parameters: ()
focal_class.return: Subject
focal_class.signature: Subject getSubject()
focal_class.class_method_signature: LoginContextProviderImpl.getCallbackHandler(Credentials credentials, String workspaceName)
focal_class.full_signature: @NotNull private CallbackHandler getCallbackHandler(Credentials credentials, String workspaceName)
focal_class.identifier: getCallbackHandler
focal_class.modifiers: @NotNull private
focal_class.parameters: (Credentials credentials, String workspaceName)
focal_class.return: CallbackHandler
focal_class.signature: CallbackHandler getCallbackHandler(Credentials credentials, String workspaceName)
focal_class.class_method_signature: LoginContextProviderImpl.getConfiguration()
focal_class.full_signature: @NotNull private Configuration getConfiguration()
focal_class.identifier: getConfiguration
focal_class.modifiers: @NotNull private
focal_class.parameters: ()
focal_class.return: Configuration
focal_class.signature: Configuration getConfiguration()
focal_method.body: @Override
      @NotNull
      public LoginContext getLoginContext(Credentials credentials, String workspaceName)
              throws LoginException {
          Subject subject = getSubject();
          if (subject != null && credentials == null) {
              log.debug("Found pre-authenticated subject: No further login actions required.");
              return new PreAuthContext(subject);
          }
  
          if (subject == null) {
              subject = new Subject();
          }
          CallbackHandler handler = getCallbackHandler(credentials, workspaceName);
          return new JaasLoginContext(appName, subject, handler, getConfiguration());
      }
focal_method.class_method_signature: LoginContextProviderImpl.getLoginContext(Credentials credentials, String workspaceName)
focal_method.full_signature: @Override @NotNull public LoginContext getLoginContext(Credentials credentials, String workspaceName)
focal_method.identifier: getLoginContext
focal_method.invocations: getSubject debug getCallbackHandler getConfiguration
focal_method.modifiers: @Override @NotNull public
focal_method.parameters: (Credentials credentials, String workspaceName)
focal_method.return: LoginContext
focal_method.signature: LoginContext getLoginContext(Credentials credentials, String workspaceName)