test_class.declarator: USER_ID = randomUUID()
test_class.modifier: private static final
test_class.original_string: private static final UUID USER_ID = randomUUID();
test_class.type: UUID
test_class.var_name: USER_ID
test_class.declarator: ORGANIZATION_ID = randomUUID()
test_class.modifier: private static final
test_class.original_string: private static final UUID ORGANIZATION_ID = randomUUID();
test_class.type: UUID
test_class.var_name: ORGANIZATION_ID
test_class.declarator: PROFILE_PHOTO_FILE_ID = randomUUID()
test_class.modifier: private static final
test_class.original_string: private static final UUID PROFILE_PHOTO_FILE_ID = randomUUID();
test_class.type: UUID
test_class.var_name: PROFILE_PHOTO_FILE_ID
test_class.declarator: CREATION_TIME = Instant.ofEpochSecond(9999999L)
test_class.modifier: private static final
test_class.original_string: private static final Instant CREATION_TIME = Instant.ofEpochSecond(9999999L);
test_class.type: Instant
test_class.var_name: CREATION_TIME
test_class.declarator: USER_DISPLAY_NAME = "user-display-name"
test_class.modifier: private static final
test_class.original_string: private static final String USER_DISPLAY_NAME = "user-display-name";
test_class.type: String
test_class.var_name: USER_DISPLAY_NAME
test_class.declarator: USER_USERNAME = "user-email"
test_class.modifier: private static final
test_class.original_string: private static final String USER_USERNAME = "user-email";
test_class.type: String
test_class.var_name: USER_USERNAME
test_class.declarator: ENCODED_PASSWORD = "encoded-password"
test_class.modifier: private static final
test_class.original_string: private static final String ENCODED_PASSWORD = "encoded-password";
test_class.type: String
test_class.var_name: ENCODED_PASSWORD
test_class.declarator: NO_CHANGE = null
test_class.modifier: private static final
test_class.original_string: private static final String NO_CHANGE = null;
test_class.type: String
test_class.var_name: NO_CHANGE
test_class.declarator: BLANK_FIELD = ""
test_class.modifier: private static final
test_class.original_string: private static final String BLANK_FIELD = "";
test_class.type: String
test_class.var_name: BLANK_FIELD
test_class.declarator: usersEventHandler
test_class.modifier: private
test_class.original_string: private UsersEventHandler usersEventHandler;
test_class.type: UsersEventHandler
test_class.var_name: usersEventHandler
test_class.declarator: usersRepository
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private UsersRepository usersRepository;
test_class.type: UsersRepository
test_class.var_name: usersRepository
test_class.file: users/src/test/java/engineering/everest/lhotse/users/eventhandlers/UsersEventHandlerTest.java
test_class.identifier: UsersEventHandlerTest
test_case.body: @Test
      void onUserCreatedByAdminEvent_WillDelegate() {
          usersEventHandler.on(new UserCreatedByAdminEvent(USER_ID, ORGANIZATION_ID, ADMIN_ID,
                  USER_DISPLAY_NAME, USER_USERNAME, ENCODED_PASSWORD), CREATION_TIME);
  
          verify(usersRepository).createUser(USER_ID, ORGANIZATION_ID, USER_DISPLAY_NAME, USER_USERNAME, ENCODED_PASSWORD, CREATION_TIME);
      }
test_case.class_method_signature: UsersEventHandlerTest.onUserCreatedByAdminEvent_WillDelegate()
test_case.full_signature: @Test void onUserCreatedByAdminEvent_WillDelegate()
test_case.identifier: onUserCreatedByAdminEvent_WillDelegate
test_case.invocations: on createUser verify
test_case.modifiers: @Test
test_case.parameters: ()
test_case.return: void
test_case.signature: void onUserCreatedByAdminEvent_WillDelegate()
focal_class.declarator: usersRepository
focal_class.modifier: private final
focal_class.original_string: private final UsersRepository usersRepository;
focal_class.type: UsersRepository
focal_class.var_name: usersRepository
focal_class.file: users/src/main/java/engineering/everest/lhotse/users/eventhandlers/UsersEventHandler.java
focal_class.identifier: UsersEventHandler
focal_class.interfaces: implements ReplayCompletionAware
focal_class.class_method_signature: UsersEventHandler.UsersEventHandler(UsersRepository usersRepository)
focal_class.full_signature: @Autowired public  UsersEventHandler(UsersRepository usersRepository)
focal_class.identifier: UsersEventHandler
focal_class.modifiers: @Autowired public
focal_class.parameters: (UsersRepository usersRepository)
focal_class.signature:  UsersEventHandler(UsersRepository usersRepository)
focal_class.class_method_signature: UsersEventHandler.prepareForReplay()
focal_class.full_signature: @ResetHandler public void prepareForReplay()
focal_class.identifier: prepareForReplay
focal_class.modifiers: @ResetHandler public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void prepareForReplay()
focal_class.class_method_signature: UsersEventHandler.on(UserCreatedByAdminEvent event, @Timestamp Instant creationTime)
focal_class.full_signature: @EventHandler void on(UserCreatedByAdminEvent event, @Timestamp Instant creationTime)
focal_class.identifier: on
focal_class.modifiers: @EventHandler
focal_class.parameters: (UserCreatedByAdminEvent event, @Timestamp Instant creationTime)
focal_class.return: void
focal_class.signature: void on(UserCreatedByAdminEvent event, @Timestamp Instant creationTime)
focal_class.class_method_signature: UsersEventHandler.on(UserCreatedForNewlyRegisteredOrganizationEvent event, @Timestamp Instant creationTime)
focal_class.full_signature: @EventHandler void on(UserCreatedForNewlyRegisteredOrganizationEvent event, @Timestamp Instant creationTime)
focal_class.identifier: on
focal_class.modifiers: @EventHandler
focal_class.parameters: (UserCreatedForNewlyRegisteredOrganizationEvent event, @Timestamp Instant creationTime)
focal_class.return: void
focal_class.signature: void on(UserCreatedForNewlyRegisteredOrganizationEvent event, @Timestamp Instant creationTime)
focal_class.class_method_signature: UsersEventHandler.on(UserDetailsUpdatedByAdminEvent event)
focal_class.full_signature: @EventHandler void on(UserDetailsUpdatedByAdminEvent event)
focal_class.identifier: on
focal_class.modifiers: @EventHandler
focal_class.parameters: (UserDetailsUpdatedByAdminEvent event)
focal_class.return: void
focal_class.signature: void on(UserDetailsUpdatedByAdminEvent event)
focal_class.class_method_signature: UsersEventHandler.on(UserProfilePhotoUploadedEvent event)
focal_class.full_signature: @EventHandler void on(UserProfilePhotoUploadedEvent event)
focal_class.identifier: on
focal_class.modifiers: @EventHandler
focal_class.parameters: (UserProfilePhotoUploadedEvent event)
focal_class.return: void
focal_class.signature: void on(UserProfilePhotoUploadedEvent event)
focal_class.class_method_signature: UsersEventHandler.on(UserPromotedToOrganizationAdminEvent event)
focal_class.full_signature: @EventHandler void on(UserPromotedToOrganizationAdminEvent event)
focal_class.identifier: on
focal_class.modifiers: @EventHandler
focal_class.parameters: (UserPromotedToOrganizationAdminEvent event)
focal_class.return: void
focal_class.signature: void on(UserPromotedToOrganizationAdminEvent event)
focal_class.class_method_signature: UsersEventHandler.selectDesiredState(String desiredState, String currentState)
focal_class.full_signature: private String selectDesiredState(String desiredState, String currentState)
focal_class.identifier: selectDesiredState
focal_class.modifiers: private
focal_class.parameters: (String desiredState, String currentState)
focal_class.return: String
focal_class.signature: String selectDesiredState(String desiredState, String currentState)
focal_method.body: @EventHandler
      void on(UserCreatedByAdminEvent event, @Timestamp Instant creationTime) {
          LOGGER.info("User {} created for admin created organization {}", event.getUserId(), event.getOrganizationId());
          usersRepository.createUser(event.getUserId(), event.getOrganizationId(), event.getUserDisplayName(),
                  event.getUserEmail(), event.getEncodedPassword(), creationTime);
      }
focal_method.class_method_signature: UsersEventHandler.on(UserCreatedByAdminEvent event, @Timestamp Instant creationTime)
focal_method.full_signature: @EventHandler void on(UserCreatedByAdminEvent event, @Timestamp Instant creationTime)
focal_method.identifier: on
focal_method.invocations: info getUserId getOrganizationId createUser getUserId getOrganizationId getUserDisplayName getUserEmail getEncodedPassword
focal_method.modifiers: @EventHandler
focal_method.parameters: (UserCreatedByAdminEvent event, @Timestamp Instant creationTime)
focal_method.return: void
focal_method.signature: void on(UserCreatedByAdminEvent event, @Timestamp Instant creationTime)