Please enable JavaScript.
Coggle requires JavaScript to display documents.
Have a service to import default living apps - Coggle Diagram
Have a service to import default living apps
:parking: Parking
cf. Parking of
https://coggle.it/diagram/Y8ALm2qS3BdYabKd/t/have-a-service-to-import-default-pages
:check: duplicate code between MandatoryLivingApplicationImporter & DefaultLivingApplicationImporter
:check: move applicationImporter to abstract
:check: common code between importMandatoryPages & importDefaultPages
:check: common code between importProvidedPagesFromResourcePattern & importProvidedRemovablePages
:check: move log on if addRemovablePagesIfMissing to importDefaultPages
:check: create function importProvidedPagesFromClasspath in abstract
:check: add param locationPattern
:check: add params boolean removable, boolean editable, boolean addIfMissing
:check: common code between importMandatoryApplications & importDefaultApplications
:check: create function to get import result
:check: use function in both importers
:check: common code between importProvidedApplicationsFromClasspath & importProvidedEditableApplicationsFromClasspath
:check: move log on if addEditableApplicationsIfMissing to importDefaultApplications
:check: create function importProvidedApplicationsFromClasspath in abstract
:check: add param locationPattern
:check: add params editable and addIfMissing
:check: common code between importProvidedApplications & importProvidedEditableApplications
:check: move function to abstract
:check: use function in Mandatory
:check: use function in Default
:check: move functions from ApplicationImporter to DefaultLivingApplicationImporter
:check: move content of ApplicationImporter.init() to DefaultLivingApplicationImporter.importDefaultApplications()
:check: add importProvidedEditableApplicationsFromClasspath
:check: add importProvidedEditableApplications
:check: inject ApplicationImporter to the service
:check: add log on else if not addRemovableIfMissing
:check: call DefaultLivingApplicationImporter.importDefaultApplications() in DefaultLivingApplicationImporter.init()
:check: remove all moved functions and attributes in ApplicationImporter
:check: in tests replace applicationImport functions calls by defaultLivingApplicationImporter
:check: rename functions to copy the same behavior that MandatoryLAImporter
:check: make ApplicationImporter a "standalone" service
:check: remove init()
:check: remove implements TenantLifecycleService
:check: remove
Order
on ApplicationImporter
:check: move tests from ApplicationImporterTest to DefaultLivingApplicationImporterTest
:check: move tests containing init() call
:check: init applicationImporter in before()
:check: remove ApplicationImporter.addIfMissing
:check: use setAddEditableApplicationsIfMissing of DefaultLivingApplicationImporter in MandatoryLivingApplicationImporter.importMandatoryApplications
:check: use 2 different boolean in DefaultLivingApplicationImporter for pages and applications
(to be iso functional as the detection of "first run" is made differently)
:check: rename addRemovableIfMissing by addRemovablePagesIfMissing
:check: create addEditableApplicationsIfMissing
:check: use dedicated booleans in main and test
:check: in MandatoryLAImporterTest assert setAddEditableApplicationsIfMissing