mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
FUS: record all events locally if implicitly invoked to simplify collectors testing
This commit is contained in:
+2
-2
@@ -42,8 +42,8 @@ public class RecordStateStatisticsEventLogAction extends AnAction {
|
||||
return;
|
||||
}
|
||||
|
||||
myStatesLogger.logApplicationStates(approvedGroups);
|
||||
myStatesLogger.logProjectStates(project, approvedGroups);
|
||||
myStatesLogger.logApplicationStates(approvedGroups, true);
|
||||
myStatesLogger.logProjectStates(project, approvedGroups, true);
|
||||
|
||||
ApplicationManager.getApplication().invokeLater(
|
||||
() -> showNotification(project, e, "Collecting and recording events was finished")
|
||||
|
||||
+6
-6
@@ -27,18 +27,18 @@ public class FUStateUsagesLogger implements UsagesCollectorConsumer {
|
||||
public static FUStateUsagesLogger create() { return new FUStateUsagesLogger(); }
|
||||
|
||||
public void logProjectStates(@NotNull Project project) {
|
||||
logProjectStates(project, EventLogExternalSettingsService.getInstance().getApprovedGroups());
|
||||
logProjectStates(project, EventLogExternalSettingsService.getInstance().getApprovedGroups(), false);
|
||||
}
|
||||
|
||||
public void logApplicationStates() {
|
||||
logApplicationStates(EventLogExternalSettingsService.getInstance().getApprovedGroups());
|
||||
logApplicationStates(EventLogExternalSettingsService.getInstance().getApprovedGroups(), false);
|
||||
}
|
||||
|
||||
public void logProjectStates(@NotNull Project project, @NotNull Set<String> approvedGroups) {
|
||||
public void logProjectStates(@NotNull Project project, @NotNull Set<String> approvedGroups, boolean recordAll) {
|
||||
if (!approvedGroups.isEmpty() || ApplicationManagerEx.getApplicationEx().isInternal()) {
|
||||
synchronized (LOCK) {
|
||||
for (ProjectUsagesCollector usagesCollector : ProjectUsagesCollector.getExtensions(this)) {
|
||||
if (approvedGroups.contains(usagesCollector.getGroupId())) {
|
||||
if (recordAll || approvedGroups.contains(usagesCollector.getGroupId())) {
|
||||
final FeatureUsageGroup group = new FeatureUsageGroup(usagesCollector.getGroupId(), usagesCollector.getVersion());
|
||||
logUsagesAsStateEvents(project, group, usagesCollector.getData(project), usagesCollector.getUsages(project));
|
||||
}
|
||||
@@ -47,10 +47,10 @@ public class FUStateUsagesLogger implements UsagesCollectorConsumer {
|
||||
}
|
||||
}
|
||||
|
||||
public void logApplicationStates(@NotNull Set<String> approvedGroups) {
|
||||
public void logApplicationStates(@NotNull Set<String> approvedGroups, boolean recordAll) {
|
||||
synchronized (LOCK) {
|
||||
for (ApplicationUsagesCollector usagesCollector : ApplicationUsagesCollector.getExtensions(this)) {
|
||||
if (approvedGroups.contains(usagesCollector.getGroupId())) {
|
||||
if (recordAll || approvedGroups.contains(usagesCollector.getGroupId())) {
|
||||
final FeatureUsageGroup group = new FeatureUsageGroup(usagesCollector.getGroupId(), usagesCollector.getVersion());
|
||||
logUsagesAsStateEvents(null, group, usagesCollector.getData(), usagesCollector.getUsages());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user