[TECHNICAL] OCS sharing and space members refactor
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 4.2k
- Forks
- 3.1k
- Avg merge
- 1d 12h
- Merged PRs (30d)
- 7
Description
With the new implementation for OCIS shares listing (https://github.com/owncloud/android/issues/4876), it's necessary to refactor all classes and methods related to the legacy sharing implementation to keep the codebase consistent.
OCS implementation → Use the Ocs prefix.
Graph API implementation → Use the Graph prefix (already done) ✅
Moreover, an additional check is needed in the XML files used for space members and shares to ensure that the ids are generic and consistent.
TODOs
- Refactor OCS classes adding the
Ocsprefix - Refactor XML files used for space members and shares
- Move the adapter and the recycler view setup for roles in
AddMemberFragmenttoonViewCreatedmethod - Add a
delayto the members search to avoid repetitive requests when user types quickly - Use extension functions to bind roles, date picker and other UI elements
- Refactor the members filter to match the implementation in
AddGraphShareFragment
TASKS
- Research (if needed)
- Create branch technical/ocs_sharing_refactor
- Development tasks
- Implement whatever
- ...
- Implement unit tests (if needed)
- Code review and apply changes requested
- Design test plan
- QA
- Merge branch technical/ocs_sharing_refactor into master
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the legacy OCS sharing classes with the implementation from issue 4876 and the already-prefixed Graph API classes. Inspect AddMemberFragment, AddGraphShareFragment, and the XML files used for space members and shares, including their adapters, filters, and role setup. Done means the OCS prefixes, generic XML ids, delayed search, extension-function bindings, and matching member-filter behavior are implemented and verified through the planned tests and QA.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 42/100