[
https://issues.apache.org/jira/browse/SOLR-8475?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15083191#comment-15083191
]
Christine Poerschke commented on SOLR-8475:
-------------------------------------------
bq. If it's possible to leave deprecated inner classes extending the extracted
classes, then existing user code should work just fine. I haven't attempted to
do this, but I think that should work.
SOLR-8490 (created as a sub-task of this ticket) is my attempt at this for
{{QueryCommand}} only. Having the deprecated inner class extend the extracted
class of the same name was a little tricky but having an interim helper class
seems to work though perhaps there is another more proper alternative to that
also.
{code}
+++ b/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java
...
- public static class QueryCommand {
+ @Deprecated
+ public static class QueryCommand extends QueryCommandAdapter {
+++ b/solr/core/src/java/org/apache/solr/search/QueryCommandAdapter.java
...
+@Deprecated
+public class QueryCommandAdapter extends QueryCommand {
+++ b/solr/core/src/java/org/apache/solr/search/QueryCommand.java
...
+public class QueryCommand {
{code}
> Some refactoring to SolrIndexSearcher
> -------------------------------------
>
> Key: SOLR-8475
> URL: https://issues.apache.org/jira/browse/SOLR-8475
> Project: Solr
> Issue Type: Improvement
> Components: search
> Reporter: Shai Erera
> Assignee: Shai Erera
> Priority: Minor
> Fix For: 5.5, Trunk
>
> Attachments: SOLR-8475.patch, SOLR-8475.patch, SOLR-8475.patch,
> SOLR-8475.patch, SOLR-8475.patch
>
>
> While reviewing {{SolrIndexSearcher}}, I started to correct a thing here and
> there, and eventually it led to these changes:
> * Moving {{QueryCommand}} and {{QueryResult}} to their own classes.
> * Moving FilterImpl into a private static class (was package-private and
> defined in the same .java file, but separate class).
> * Some code formatting, imports organizing and minor log changes.
> * Removed fieldNames (handled the TODO in the code)
> * Got rid of usage of deprecated classes such as {{LegacyNumericUtils}} and
> {{Legacy-*-Field}}.
> I wish we'd cut down the size of this file much more (it's 2500 lines now),
> but I've decided to stop here so that the patch is manageable. I would like
> to explore further refactorings afterwards, e.g. extracting cache management
> code to an outer class (but keep {{SolrIndexSearcher}}'s API the same, if
> possible).
> If you have additional ideas of more cleanups / simplifications, I'd be glad
> to do them.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]