Skip to content

[TASK] Refactor RoutingService and Middleware for improvements#4590

Open
froemken wants to merge 3 commits intoTYPO3-Solr:mainfrom
froemken:refactorRoutingServiceAndMiddleware
Open

[TASK] Refactor RoutingService and Middleware for improvements#4590
froemken wants to merge 3 commits intoTYPO3-Solr:mainfrom
froemken:refactorRoutingServiceAndMiddleware

Conversation

@froemken
Copy link
Copy Markdown
Contributor

  • Remove unnecessary withSettings method in RoutingService.
  • Refactor SolrRoutingMiddleware:
    • Introduce constructor property promotion.
    • Replace traits with dependency injection for LoggerInterface.
    • Revise context resolution logic for better readability and testability.
    • Simplify parameter extraction and route handling.
  • Add new SolrRoutingContext class for routing context encapsulation.
  • Update PageIndexerRequestHandler and PageIndexerInitialization:
    • Simplify code using constructor property promotion.
    • Extract helper methods for clarity and deduplication.
  • Adjust Services.yaml to exclude additional classes from autoloading.
  • Improve middleware unit tests to leverage GeneralUtility::addInstance.

- Remove unnecessary `withSettings` method in `RoutingService`.
- Refactor `SolrRoutingMiddleware`:
  - Introduce constructor property promotion.
  - Replace traits with dependency injection for `LoggerInterface`.
  - Revise context resolution logic for better readability and testability.
  - Simplify parameter extraction and route handling.
- Add new `SolrRoutingContext` class for routing context encapsulation.
- Update `PageIndexerRequestHandler` and `PageIndexerInitialization`:
  - Simplify code using constructor property promotion.
  - Extract helper methods for clarity and deduplication.
- Adjust `Services.yaml` to exclude additional classes from autoloading.
- Improve middleware unit tests to leverage `GeneralUtility::addInstance`.
- Define middleware services with namespace and resource path.
- Enable `autowire` and `autoconfigure` for easier dependency injection.
- Remove redundant type declaration for `$responseOutputHandler`.
- Align code with updated PHP typing standards for improved clarity.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant