let Zeitwerk handle the requiring of data export use cases

This commit is contained in:
Georg Gadinger 2022-12-29 07:51:14 +01:00 committed by Andreas Nedbal
parent 2a9111de61
commit 6e30bc73cf
1 changed files with 12 additions and 9 deletions

View File

@ -4,19 +4,22 @@ require "fileutils"
require "securerandom"
require "zip/filesystem"
require "use_case/data_export/answers"
require "use_case/data_export/appendables"
require "use_case/data_export/comments"
require "use_case/data_export/mute_rules"
require "use_case/data_export/questions"
require "use_case/data_export/relationships"
require "use_case/data_export/theme"
require "use_case/data_export/user"
# require all data export use cases via Zeitwerk
# rubocop:disable Lint/Void
UseCase::DataExport::Answers
UseCase::DataExport::Appendables
UseCase::DataExport::Comments
UseCase::DataExport::MuteRules
UseCase::DataExport::Questions
UseCase::DataExport::Relationships
UseCase::DataExport::Theme
UseCase::DataExport::User
# rubocop:enable all
# the justask data exporter, now with 200% less shelling out to system tools!
#
# the data export can be easily extended by subclassing `UseCase::DataExport::Base`
# and `require`ing it above
# and letting Zeitwerk know about the subclasses above
class Exporter
def initialize(user)
@user = user