João Paulo Lemes Machado created LUCENE-7904: ------------------------------------------------
Summary: Refactoring of SegmentInfos Key: LUCENE-7904 URL: https://issues.apache.org/jira/browse/LUCENE-7904 Project: Lucene - Core Issue Type: Improvement Components: core/index Reporter: João Paulo Lemes Machado Hello everyone. I was analyzing the modularization of some classes, and I identified that the class SegmentInfos has an opportunity for cohesion improvement. The class IndexWriter was in the same situation and the problem was solved as follows: The IndexWriterConfig class was created, and several get() and set() methods that were used only to configure the class parameters were moved from IndexWriter to IndexWriterConfig. The new class was then accessed through an instance variable in IndexWriter. This strategy has cleaned and improved IndexWriter cohesion. With this in mind, I would recommend creating a new class: SegmentInfosConfig , and moving the following methods: getLastCommitGeneration getLastCommitSegmentsFileName getSegmentsFileName getNextPendingGeneration getId getVersion getGeneration getLastGeneration setInfoStream getInfoStream setNextWriteGeneration setUserData setVersion getCommitLuceneVersion getMinSegmentLuceneVersion from the SegmentInfos. Those parameters accessed by an instance variable in the SegmentInfos. Moreover, the orthogonality is the design would be enhanced. What do you think about that? -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org