test_class.declarator: root = Mockito.mock(Root.class)
test_class.modifier: private final
test_class.original_string: private final Root root = Mockito.mock(Root.class);
test_class.type: Root
test_class.var_name: root
test_class.declarator: userConfiguration = Mockito.mock(UserConfiguration.class)
test_class.modifier: private final
test_class.original_string: private final UserConfiguration userConfiguration = Mockito.mock(UserConfiguration.class);
test_class.type: UserConfiguration
test_class.var_name: userConfiguration
test_class.file: oak-core/src/test/java/org/apache/jackrabbit/oak/security/user/whiteboard/WhiteboardUserAuthenticationFactoryTest.java
test_class.identifier: WhiteboardUserAuthenticationFactoryTest
test_case.body: @Test
      public void testNoServiceNoDefault() {
          WhiteboardUserAuthenticationFactory factory = new WhiteboardUserAuthenticationFactory(null);
          assertNull(factory.getAuthentication(getUserConfiguration(), root, "userId"));
      }
test_case.class_method_signature: WhiteboardUserAuthenticationFactoryTest.testNoServiceNoDefault()
test_case.full_signature: @Test public void testNoServiceNoDefault()
test_case.identifier: testNoServiceNoDefault
test_case.invocations: assertNull getAuthentication getUserConfiguration
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testNoServiceNoDefault()
focal_class.declarator: defaultFactory
focal_class.modifier: private final
focal_class.original_string: private final UserAuthenticationFactory defaultFactory;
focal_class.type: UserAuthenticationFactory
focal_class.var_name: defaultFactory
focal_class.file: oak-core/src/main/java/org/apache/jackrabbit/oak/security/user/whiteboard/WhiteboardUserAuthenticationFactory.java
focal_class.identifier: WhiteboardUserAuthenticationFactory
focal_class.interfaces: implements UserAuthenticationFactory
focal_class.class_method_signature: WhiteboardUserAuthenticationFactory.WhiteboardUserAuthenticationFactory(@Nullable UserAuthenticationFactory defaultFactory)
focal_class.full_signature: public  WhiteboardUserAuthenticationFactory(@Nullable UserAuthenticationFactory defaultFactory)
focal_class.identifier: WhiteboardUserAuthenticationFactory
focal_class.modifiers: public
focal_class.parameters: (@Nullable UserAuthenticationFactory defaultFactory)
focal_class.signature:  WhiteboardUserAuthenticationFactory(@Nullable UserAuthenticationFactory defaultFactory)
focal_class.class_method_signature: WhiteboardUserAuthenticationFactory.getAuthentication(@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId)
focal_class.full_signature: @Nullable @Override public Authentication getAuthentication(@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId)
focal_class.identifier: getAuthentication
focal_class.modifiers: @Nullable @Override public
focal_class.parameters: (@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId)
focal_class.return: Authentication
focal_class.signature: Authentication getAuthentication(@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId)
focal_class.superclass: extends AbstractServiceTracker<UserAuthenticationFactory>
focal_method.body: @Nullable
      @Override
      public Authentication getAuthentication(@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId) {
          List<UserAuthenticationFactory> services = getServices();
          if (services.isEmpty() && defaultFactory != null) {
              return defaultFactory.getAuthentication(userConfiguration, root, userId);
  
          }
          for (UserAuthenticationFactory factory : services) {
              Authentication authentication = factory.getAuthentication(userConfiguration, root, userId);
              if (authentication != null) {
                  return authentication;
              }
          }
          return null;
      }
focal_method.class_method_signature: WhiteboardUserAuthenticationFactory.getAuthentication(@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId)
focal_method.full_signature: @Nullable @Override public Authentication getAuthentication(@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId)
focal_method.identifier: getAuthentication
focal_method.invocations: getServices isEmpty getAuthentication getAuthentication
focal_method.modifiers: @Nullable @Override public
focal_method.parameters: (@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId)
focal_method.return: Authentication
focal_method.signature: Authentication getAuthentication(@NotNull UserConfiguration userConfiguration, @NotNull Root root, @Nullable String userId)