@Override
  protected @NotNull Collection<? extends ActionOnSaveInfo> getActionOnSaveInfos(@NotNull ActionOnSaveContext context) {
    if (isRider()) {
      // Rider has its own 'Format/cleanup/etc. on save' implementation.
      return Collections.emptyList();
    }

    List<ActionOnSaveInfo> result = new ArrayList<>(4);
    result.add(new FormatOnSaveActionInfo(context));

    if (isOptimizeImportsSupported()) {
      result.add(new OptimizeImportsOnSaveActionInfo(context));
    }
    if (isRearrangeCodeSupported()) {
      result.add(new RearrangeCodeOnSaveActionInfo(context));
    }
    if (isCleanupCodeSupported()) {
      result.add(new CodeCleanupOnSaveActionInfo(context));
    }

    return result;
  }
@Override
  protected @NotNull Collection<? extends ActionOnSaveInfo> getActionOnSaveInfos(@NotNull ActionOnSaveContext context)