Made fields final and removed their respective setters. Introduced the Builder pattern to facilitate the construction of ShingleFilter instances. All previous ctors have been removed and replaced with a new one that accepts a Builder object as an input parameter (Used @IgnoreRandomChains to pass the test for now).
Since ctors were removed, an entry in MIGRATE.md is necessary, as Elasticsearch relies on this class, according to a GitHub search.
If the Builder pattern is not preferred, we could discard this approach and consider using chaining constructors instead.
This PR has not had activity in the past 2 weeks, labeling it as stale. If the PR is waiting for review, notify the dev@lucene.apache.org list. Thank you for your contribution!
Description
13112
Made fields final and removed their respective setters. Introduced the Builder pattern to facilitate the construction of ShingleFilter instances. All previous ctors have been removed and replaced with a new one that accepts a Builder object as an input parameter (Used @IgnoreRandomChains to pass the test for now).
Since ctors were removed, an entry in MIGRATE.md is necessary, as Elasticsearch relies on this class, according to a GitHub search.
If the Builder pattern is not preferred, we could discard this approach and consider using chaining constructors instead.