private void publishOnlineUsers()

in usage-statistics-impl/src/jetbrains/buildServer/usageStatistics/impl/providers/ServerLoadUsageStatisticsProvider.java [140:164]


  private void publishOnlineUsers(@NotNull final UsageStatisticsPublisher publisher,
                                  @NotNull final UsageStatisticsPresentationManager presentationManager,
                                  @NotNull final String periodDescription,
                                  final long fromDate) {
    final String webUsersId = "webUsers";
    final String ideUsersId = "ideUsers";
    final String webOnlyUsersId = "webOnlyUsers";
    final String ideOnlyUsersId = "ideOnlyUsers";

    final UsageStatisticsFormatter formatter = new PercentageFormatter(myServer.getUserModel().getNumberOfRegisteredUsers());
    final String valueTooltip = "User count (% of all users)";

    apply(presentationManager, periodDescription, webUsersId, "Web users", formatter, valueTooltip);
    apply(presentationManager, periodDescription, ideUsersId, "IDE users", formatter, valueTooltip);
    apply(presentationManager, periodDescription, webOnlyUsersId, "Web only users", formatter, valueTooltip);
    apply(presentationManager, periodDescription, ideOnlyUsersId, "IDE only users", formatter, valueTooltip);

    final Set<String> webUsers = myWebUsersProvider.getWebUsers(fromDate);
    final Set<String> ideUsers = myIDEUsersProvider.getIDEUsers(fromDate);

    publish(publisher, periodDescription, webUsersId, webUsers.size());
    publish(publisher, periodDescription, ideUsersId, ideUsers.size());
    publish(publisher, periodDescription, webOnlyUsersId, CollectionsUtil.minus(webUsers, ideUsers).size());
    publish(publisher, periodDescription, ideOnlyUsersId, CollectionsUtil.minus(ideUsers, webUsers).size());
  }