Feature Wiki

Information about planned and released features

Tabs

Refactor Trash/Deletion Process

1 Initial Problem

The current repository deletion process is vulnerable agains errors in the object and object type specific deletion methods. Even if the trash is deactivated, objects are moved to the trash and then finally removed from the system. This leads to remaining trash objects, if the process is interrupted, see https://mantis.ilias.de/view.php?id=35943

2 Conceptual Summary

The deletion process should be refactored with the major goals:

  • Remove the trash dependency/step from the deletion process (if trash is deactivated).
  • Refactor the currently static methods to decent business logic manager classes.
  • Decouple tree and object service parts.
  • Make the process testable through unit tests.
  • If feasible, make the process less vulnerable against errors in the object type specific implementations, e.g. through try/catch.

3 User Interface Modifications

3.1 List of Affected Views

  • No views would be changed.

3.2 User Interface Details

No views will be changed.

3.3 New User Interface Concepts

No new user interface concepts.

3.4 Accessibility Implications

No accessibility implications.

4 Technical Information

No technical issues.

5 Privacy

Making the deletion processes more reliable should always improve privacy, since user related data might be affected.

6 Security

No security issues.

7 Contact

8 Funding

If you are interest in funding this feature, please add your name and institution to this list.

9 Discussion

JourFixe, ILIAS [jourfixe], 12 JUN 2023: We highly appreciate this suggestion and accept this refactoring for ILIAS 10.

10 Implementation

{ The maintainer has to give a description of the final implementation and add screenshots if possible. }

Test Cases

Test cases completed at {date} by {user}

  • {Test case number linked to Testrail} : {test case title}

Privacy

Information in privacy.md of component: updated on {date} by {user} | no change required

Approval

Approved at {date} by {user}.

Last edited: 12. Jun 2023, 16:19, Kunkel, Matthias [mkunkel]