🛠️ Refactor: Endpoints - Reduce Duplication and Enforce SOLID #612
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This refactor addresses code duplication and structural debt in several endpoint classes, adhering to DRY and SOLID principles without altering runtime behavior.
Key Changes:
_extract_special_paramshook to allow subclasses to inject custom parameters into the request without overriding the entire_list_implmethod._list_imploverrides with_extract_special_params, simplifying the classes and decoupling them from the base class's internal list logic._prepare_create_requestto centralize validation, header building, and path construction for record creation._filter_by_sitehelper to deduplicate filtering logic in synchronous and asynchronous methods._get_job_path,_parse_job_status,_list_jobs_path, and_parse_job_listhelpers to share logic between sync and async methods.Verification:
tests/unit/endpoints/and verified no regressions.PR created automatically by Jules for task 8952715575847996726 started by @fderuiter